Visualizzatore registro associazione assembly (Fuslogvw.exe)

Il visualizzatore registro associazione assembly consente di visualizzare i dettagli delle associazioni di assembly non riuscite. Queste informazioni consentono di diagnosticare per quale motivo non sia possibile individuare un assembly in fase di esecuzione. Gli errori individuati sono solitamente dovuti alla distribuzione di un assembly in un percorso errato oppure alla mancata corrispondenza di lingue o numeri di versione. L'impossibilità di Common Language Runtime di individuare un assembly produce solitamente un'eccezione TypeLoadException.

Utilizzo del visualizzatore registro associazione assembly

Il visualizzatore registro associazione assembly consente di effettuare le seguenti operazioni:

  • Visualizzare il contenuto del registro associazione assembly.
  • Modificare la visualizzazione del percorso del registro.
  • Visualizzare i dettagli relativi a un errore specifico.
  • Eliminare una singola voce dal registro.
  • Eliminare tutte le voci dal registro.
  • Aggiornare l'interfaccia utente.
  • Chiudere il visualizzatore.

È inoltre possibile impostare le opportune chiavi del Registro di sistema per:

  • Visualizzare tutte le associazioni riportate nel registro.
  • Visualizzare gli errori di associazione di assembly satellite riportati nel registro.

Per visualizzare il contenuto del registro associazione assembly

  • Eseguire Fuslogvw.exe dalla riga di comando.

Nella figura riportata di seguito viene mostrato il visualizzatore registro associazione assembly.

Contenuto del registro associazione assembly

Nel visualizzatore è riportata una voce per ciascuna associazione di assembly non riuscita. Per ciascun errore viene descritta l'applicazione che ha avviato l'associazione, l'assembly interessato, inclusi il nome, la versione, la lingua e la chiave pubblica, nonché la data e l'ora dell'errore.

Per modificare la visualizzazione del percorso del registro

  • Selezionare il pulsante di opzione Default per visualizzare gli errori di associazione di tutti i tipi di applicazioni ad eccezione di ASP.NET. Per impostazione predefinita, le voci di log vengono memorizzate in directory specifiche dell'utente all'interno della cache di wininet.

  • Selezionare il pulsante di opzione ASP.NET per visualizzare gli errori di associazione delle applicazioni ASP.NET. La memorizzazione delle voci del registro in base all'utente non funziona correttamente con ASP.NET, perché spesso negli scenari di server Web tutti gli utenti utilizzano lo stesso ID. Gli errori di associazione di ASP.NET vengono pertanto registrati in una directory di cache specifica dell'applicazione.

  • Selezionare il pulsante di opzione Custom per visualizzare gli errori di associazione in una directory personalizzata specificata. Per specificare il percorso personalizzato in cui si desidera memorizzare i registri, è necessario impostare la chiave del Registro di sistema HKLM\Software\Microsoft\Fusion\LogPath su un nome di directory valido. Tale directory deve essere pulita e contenere solo file generati dal runtime. Se contiene un file eseguibile che genera un errore da registrare, l'errore non verrà registrato poiché lo strumento cercherà di creare una directory con lo stesso nome del file eseguibile. Inoltre, il tentativo di esecuzione di un eseguibile dal registro avrà esito negativo.

    Nota   È preferibile utilizzare il percorso di associazione predefinito anziché quello personalizzato. Il runtime memorizza il percorso di associazione predefinito nella cache di wininet e rimuove tali informazioni automaticamente. Se si specifica un percorso di associazione personalizzato l'eliminazione dovrà essere eseguita manualmente.

Per visualizzare i dettagli relativi a un errore specifico

  • Nel visualizzatore selezionare il nome dell'applicazione dalla voce desiderata.

  • Fare clic sul pulsante Visualizza file di log. In alternativa è possibile fare doppio clic sulla voce selezionata.

    Nello strumento vengono visualizzati i seguenti dettagli relativi all'errore di associazione selezionato:

    • Causa specifica dell'errore, ad esempio irreperibilità del file o incompatibilità di versioni.
    • Informazioni sull'applicazione con cui è stata avviata l'associazione, inclusi il nome, la directory principale dell'applicazione (AppBase) e una descrizione del percorso di ricerca privato, se presente.
    • Identità dell'assembly cercato.
    • Descrizione dei criteri di controllo delle versioni applicati a livello di applicazione, editore o amministratore.
    • Provenienza o meno dell'assembly dalla cache assembly globale.
    • Elenco di tutti gli URL di ricerca.

Nell'esempio riportato di seguito viene illustrata una voce del registro in cui sono visualizzate informazioni dettagliate su un'associazione di assembly non riuscita.

** Assembly Binder Log Entry (3/5/2002 @ 12:54:20 PM) **

The operation failed.
Bind result: hr = 0x80070002. The system cannot find the file specified.

Assembly manager loaded from:  C:\WINNT\Microsoft.NET\Framework\v1.0.3705\fusion.dll
Running under executable  C:\Program Files\Microsoft.NET\FrameworkSDK\Samples\Tutorials\resourcesandlocalization\graphic\cs\graphicfailtest.exe
--- A detailed error log follows. 

=== Pre-bind state information ===
LOG: DisplayName = graphicfailtest.resources, Version=0.0.0.0, Culture=en-US, PublicKeyToken=null
 (Fully-specified)
LOG: Appbase = C:\Program Files\Microsoft.NET\FrameworkSDK\Samples\Tutorials\resourcesandlocalization\graphic\cs\
LOG: Initial PrivatePath = NULL
LOG: Dynamic Base = NULL
LOG: Cache Base = NULL
LOG: AppName = NULL
Calling assembly : graphicfailtest, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null.
===

LOG: Processing DEVPATH.
LOG: DEVPATH is not set. Falling through to regular bind.
LOG: Policy not being applied to reference at this time (private, custom, partial, or location-based assembly bind).
LOG: Post-policy reference: graphicfailtest.resources, Version=0.0.0.0, Culture=en-US, PublicKeyToken=null
LOG: Attempting download of new URL file:///C:/Program Files/Microsoft.NET/FrameworkSDK/Samples/Tutorials/resourcesandlocalization/graphic/cs/en-US/graphicfailtest.resources.DLL.
LOG: Attempting download of new URL file:///C:/Program Files/Microsoft.NET/FrameworkSDK/Samples/Tutorials/resourcesandlocalization/graphic/cs/en-US/graphicfailtest.resources/graphicfailtest.resources.DLL.
LOG: Attempting download of new URL file:///C:/Program Files/Microsoft.NET/FrameworkSDK/Samples/Tutorials/resourcesandlocalization/graphic/cs/en-US/graphicfailtest.resources.EXE.
LOG: Attempting download of new URL file:///C:/Program Files/Microsoft.NET/FrameworkSDK/Samples/Tutorials/resourcesandlocalization/graphic/cs/en-US/graphicfailtest.resources/graphicfailtest.resources.EXE.
LOG: All probing URLs attempted and failed.

Per eliminare una singola voce dal registro

  • Selezionare una voce nel visualizzatore.
  • Fare clic sul pulsante Elimina voce.

Per eliminare tutte le voci dal registro

  • Fare clic sul pulsante Elimina tutto.

Per aggiornare l'interfaccia utente

  • Scegliere il pulsante Aggiorna. Il visualizzatore non rileva automaticamente le nuove voci di registro quando è in esecuzione. Per visualizzarle è necessario fare clic sul pulsante Aggiorna.

Per uscire dal visualizzatore

  • Fare clic sul pulsante Esci.

Altre impostazioni di configurazione

Per registrare tutte le associazioni nel visualizzatore

  • Impostare la chiave del Registro di sistema HKLM\Software\Microsoft\Fusion\ForceLog sul valore DWORD 1.

Per impostazione predefinita, Fuslogvw.exe registra solo tentativi di individuazione di assembly non riusciti. In alcuni casi potrebbe essere utile visualizzare anche le associazioni di assembly riuscite. Potrebbe ad esempio essere necessario verificare che un assembly venga caricato dalla directory dell'applicazione invece che dalla cache assembly globale. L'impostazione di questa chiave del Registro di sistema indica a Fuslogvw.exe di registrare tutte le associazioni di assembly.

Per registrare gli errori di associazione di assembly satellite

  • Impostare la chiave del Registro di sistema HKLM\Software\Microsoft\Fusion\LogResourceBinds sul valore DWORD 1.

Per impostazione predefinita, Fuslogvw.exe non registra i tentativi non riusciti di individuazione di assembly satellite. L'impostazione di questa chiave del Registro di sistema attiva questa funzionalità.

Vedere anche

Strumenti di .NET Framework | Cache assembly globale | Modalità di individuazione di assembly del runtime | Classe TypeLoadException