Archive for the ‘Windows - Office’ Category.

Some problems with Microsoft SQL Server

Problem 1: changes in sqlcmd

I don't know exactly what happened, but from a certain moment the sql script I used to backup my SQL server DB stopped working. I usually ran it with this syntax:

sqlcmd  -i backup.sql

Where backup.sql contained the code to connect to my server. Suddenly the script started acting up, giving this message:

HResult 0x2, level 16, state 1
Named Pipes Provider: Could not open a connection to SQL Server [2].

After a while, I understood that for some reason, the sqlcmd utility changed its behavior, and forced the user to set the server with the -S parameter. So, in my case, I solved changing my batch script this way

sqlcmd -S lpc:.\SQLEXPRESS -i backup.sql

where lpc:.\SQLEXPRESS is the way to connect to my SQLEXPRESS instance via shared memory.

Problem 2: the wrong restore place

I also have a script that restores my db on another machine. I changed the destination PC, and, guess what, the restore script started acting up too!!! :-( This was the error message:

Msg 5133, Level 16, State 1, Line 1
Directory lookup for the file "C:\SomePathTo\myDB.mdf" failed with the operating system
error 3(The system cannot find the path specified.).

As the database was in C:\SomePathTo in the source machine and the target machine had not such directory, this stupid SQL server could not complete the restore operation!
The solution is

1) Run the command

restore filelistonly from DISK= 'C:\someDirt\myDB.bak'

If you run this from sqlcmd, redirect the output to some file with the -o option, as you can't see this large output on one line.

2) Search the results of this command for the colums "LogicalName" and substitute them in this script (here I used the names myDB_dat and myDB_log)

RESTORE DATABASE [myDB]
FROM DISK = 'c:\mfoff\mfoffdb.bak'
with
move 'myDB_dat' TO 'C:\newPath\myDB.mdf',
move 'myDB_log' To 'C:\newPath\myDB_log.ldf'

Velocizzare l’avvio di Internet Explorer

Il modo migliore per velocizzare l'avvio di Internet Explorer (e nel caso della versione 8 anche per evitare problemi con i componenti aggiuntivi che hanno difficoltà nel caricarsi) è quello di sostituire le icone di avvio di Explorer presenti sul desktop, nel menù programmi o nella barra di avvio veloce, con un link alla nostra pagina iniziale.
E se la nostra pagina iniziale fosse quella vuota? Niente paura: è sufficiente creare un link ad una pagina qualsiasi, quindi fare su di esso Tasto destro - Proprietà e sostituire al nome della pagina, nell campo URL della linguetta Documento Web lo pseudo URL about:blank. Verrà presentato un messaggio minaccioso Il protocollo about non contiene un'applicazione registrata. Utilizzare questa destinazione?, al quale basta rispondere affermativamente.


In alternativa si può utilizzare quanto descritto in questo articolo di Mondo Informatico.

Installare VNC da linea comando

  1. Scaricare ed installare
    Pstools
  2. Avviare psexec \\nome_o_ip > /u dominio\utente cmd
  3. Da una installazione già esistente di VNC 4, copiare il file winvnc4.exe in una cartella del PC di destinazione (ad esempio c:\programmi\vnc).
  4. Sempre da una installazione già esistente di VNC 4, dopo aver configurato l'istanza server con la password desiderata, esportare la chiave di registro HKEY_LOCAL_MACHINE\SOFTWARE\RealVNC in un file vnc.reg. Copiare quindi tale file sulla macchina di destinazione
  5. Nel propmt remoto sulla macchina di destinazione digitare
    regedit /c /s "percorso\vnc.reg"
  6. Dal propmt remoto sulla macchina di destinazione avviare winvnc4.exe -register
  7. Dal propmt remoto sulla macchina di destinazione avviare winvnc4.exe -start

Come creare un boot CD contenente Spybot

Quando un PC con sistema operativo Windows non riesce a partire, sarebbe utile avere un CD, dal quale effettuare il boot, che contenesse qualche strumento di diagnostica. Ecco come crearne uno contenente Spybot.
Continue reading ‘Come creare un boot CD contenente Spybot’ »

Messaggio di errore “PHABETI” in macro Word

Se durante l'esecuzione di una macro in Mircosoft Word 2007 o 2003, un'istruzione WordBasic.FileSaveAs genera un errore che ha come messaggio una criptica stringa PHABETI, il problema potrebbe essere dovuto all'impossibilità di scrivere nel percorso di rete specificato.
Questo per:

Complimenti a Microsoft per il testo del messaggio sicuramente esplicativo. ;-)

Excel: trasformare ore e centesimi in ore e minuti e viceversa

Visto che spesso mi capita di dover fare questi calcoli con Exel, uso questa pagina come blocco degli appunti per ricordare velocemente le formule che, in Microsoft Excel, trasformano le ore centesimali in ore e minuti.
Per passare da ore minuti a ore centesimi:

=INT(A1) + (A1 - INT(A1))/60 * 100

Per passare da ore centesimi a ore minuti:

=INT(A1) + ((A1 - INT(A1))/100) * 60

Problemi con le firme di Outlook

Oggi mi è giunta una segnalazione strana. Un utente, quando inoltrava la posta proveniente da una determinata casella, trovava apposta al proprio messaggio una vecchia firma, non più corrispondente alle proprie esigenze.
Ovviamente le impostazioni della firma nelle opzioni di Outlook risultavano corrette.
Indagando su internet ho scoperto che Outlook conserva le firme da allegare alle mail nella cartella
%userprofile%\Application Data\Microsoft\Signatures
se il sistema operativo è in inglese, oppure in
%userprofile%\Dati applicazioni\Microsoft\Firme elettroniche
per la versione italiana. Per ogni firma sono conservati tre file: un .htm, un .rtf ed un .txt.
Nel mio caso era avvenuto che, per qualche strano motivo, il file .htm contenesse il valore corretto della firma, mentre gli altri due delle versioni obsolete. Dato che il messaggio da inoltrare era in formato testo, Outlook utilizzava la firma errata.

Impossibile salvare o aprire allegati in Outlook

Nel corso delle mie peregrinazioni sulle macchine dei vari clienti, mi è successo un fatto strano.
Il tentativo di aprire o di salvare i file word allegati automaticamente alle mail di una banca falliva con un messaggio simile a Impossibile salvare il documento. Verificare di avere i corretti permessi sulla cartella di destinazione.

La soluzione è descritta in questo post.

Il problema è dovuto al fatto che Outlook per aprire o salvare un file ne crea una copia in una cartella, identificata dalla chiave di registro

HKEY_CURRENT_USER\Software\Microsoft\Office\11.0\Outlook\Security\OutlookSecureTempFolder

che non viene mai svuotata. Quando arrivano ù di cento mail contenenti un allegato che possiede sempre lo stesso nome (come in questo caso quello generato automaticamente dalla banca), Outlook non riesce più a salvare il file, generando il suddetto errore.

Una soluzione consiste nello svuotare la cartella temporanea, con un bat simile a questo:

del /q "%userprofile%\Impostazioni locali\Temporary Internet Files\OLKXXX\*.*"

dove occorre sostiuire OLKXXX con il valore presente nella citata voce di registro.

C'è anche un articolo della KB Microsoft al riguardo.

Problema “No DNS servers have the DNS records for this DC registered”

Se l'ultility NETDIAG in Windows Server 2003 mostra il seguente messaggio "No DNS servers have the DNS records for this DC registered", il problema può essere risolto tramite il comando

netdiag /fix

Tramite questa opzione si verificherà che tutti i record SRV (servizi) siano registrati correttamente nel server DNS, cercando eventualmente di registrare quelli mancanti.

A tal proposito esiste un articolo della KB Microsoft.

Impossibile effettuare “Salva con nome” di un documento office 2007 su cartella di rete

Sui computer con Office 2007 ed antivirus eTrust, il comando "Salva con nome" di un documento su una cartella di rete fallisce con il messaggio "Il percorso di rete non può essere trovato".

Per risolvere il problema occorre disabilitare la scansione real-time dei dischi di rete da parte di eTrust, come da figura.

Disabilitare protezione rete di eTrust antivirus

In alternativa, aggiungere una chiave nel registro, creandola se non presente:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Csc\Parameters con parametro FormatDatabase (DWORD)

poi settare il valore di FormatDatabase a 1.