Salve a tutti!

Questo post va sotto la serie dei problemi impossibili. Uno di quei problemi che non sembrano avere senso e che più li si studia, più si va fouri strada.

Problema: si cerca di avviare il Server Manager di una macchina con 2008 R2 italiano. Ci sono due macchine gemelle, una funziona perfettamente e l’altra ha questo problema.

Doppio click sull’icona del Server Manager per avviarlo, e il risultato è quello in figura:

image

 image

FX:{18ea3f92-d6aa-41d9-a205-2023400c8fbb} Eccezione generata dalla destinazione di una chiamata.

 

image

Dopo questi errori Il Server Manager terminava o rimaneva a video con la parte destra della schermata contenente l’errore.

Dopo una serie di passi di troubleshooting standard, è giunto il momento di guardare il dump.

Tra le eccezioni ce ne erano molte di tipo “file not found”, per cui si è proceduto a verificare la configurazione .Net in tutti i suoi aspetti, andando a riregistrare le componenti mancanti sotto la GAC, verificare i file uno per uno con il server gemello, attivare il Fusion Log.. nulla..

Riguardando bene il dump, si poteva notare una seconda eccezione, che poteva benissimo essere causata da quelle altre, per cui inizialmente le ho dato poco peso:

0:017> !PrintException 000000000432e718
Exception object: 000000000432e718
Exception type: System.ArgumentException
Message: Parametro non valido.
InnerException: <none>
StackTrace (generated):
SP IP Function
000000001CA633B0 000007FEED190526 System_Drawing_ni!System.Drawing.Font.GetHeight(System.Drawing.Graphics)+0x173b36
000000001CA63440 000007FEED01C512 System_Drawing_ni!System.Drawing.Font.get_SizeInPoints()+0x1d2
000000001CA635A0 000007FEED01C2A9 System_Drawing_ni!System.Drawing.SystemFonts.FontInPoints(System.Drawing.Font)+0x29
000000001CA63620 000007FEED124255 System_Drawing_ni!System.Drawing.SystemFonts.get_IconTitleFont()+0xd5
000000001CA63680 000007FEEC087650 Microsoft_Windows_ServerManager_ni!Microsoft.Windows.ServerManager.AccessibilityProperties.CreateNewFonts()+0x30

StackTraceString: <none>
HResult: 80070057
The current thread is unmanaged

Facendo una ricerca di questo stack nella Knowledge Base è spuntato un articolo che parlava di un problema nel quale si aveva *quasi* lo stesso stack:

943140    MenuFont in ToolStrip causing ArgumentException
http://support.microsoft.com/default.aspx?scid=kb;EN-US;943140

Era un problema di .Net 2.0 e riguardava i font installati nel sistema, o meglio le chiavi di registry relative ai font installati.

Ensure that "Tahoma (TrueType)" is referencing "Tahoma.ttf" in the registry:
HKLM\Software\Microsoft\WindowsNT\CurrentVersion\Fonts
It should not be set to Tahoma.fon, for example.

Incredibile ma vero, nel server in questione, nel nome del font Tahoma nel registro era inserito “Tahoma.fot” invece di “Tahoma.ttf”.
E’ stato sufficiente correggere il nome per risolvere il problema.

Chiaramente sarebbe stato interessante capire chi e perchè ha modificato quella chiave di registry e in che momento, ma almeno adesso il Server Manager è di nuovo utilizzabile.

Le MMC Snap-In sono ora realizzate in .Net, quindi soffrono dei problemi di .Net che possono essere globali al server.. problemi di configurazione, di aggiornamento, e via dicendo.. Spero che questo problema in particolare non capiti a nessun altro, ma nel caso, spero che questo post possa essere d’aiuto.

 

Alla prossima!

Mario Raccagni
Senior Support Engineer
Microsoft Enterprise Platform Support