Assembly Binding Log Viewer (Fuslogvw.exe)
L'Assembly Binding Log Viewer (Fuslogvw.exe) permet d'analyser le processus de chargement des ressources. Des informations détaillées sur les liaisons de ressources sont conservées par URL, par le composant WinInet de Windows. Malheureusement, lorsque WinInet retourne ces entrées, elles ne sont pas systématiquement classées dans l'ordre chronologique.
Par défaut, les appels de liaisons ne sont pas enregistrés dans le journal. Pour activer l'enregistrement, il est nécessaire de commencer par créer une valeur DWORD sous la clé HKLM\Software\Microsoft\Fusion. Le premier niveau d'enregistrement affiche uniquement les liaisons de ressources ayant échoué. Pour l'activer, vous devez créer une valeur LogResourceBinds DWORD et lui attribuer une valeur autre que la valeur par défaut 0.
**Remarque **Vous pouvez provoquer un échec de liaison de ressource dans l'application exemple en supprimant ou en attribuant simplement un nouveau nom à un assembly satellite de ressources approprié. Par exemple, après avoir supprimé les fichiers \en-US\Graphic.resources.dll et \en\Graphic.resources.dll et exécuté l'exemple Graphic, Fuslogvw.exe affichera le résultat suivant :
Ces deux entrées de journal indiquent que le Common Language Runtime a d'abord tenté de localiser une ressource pour la culture en-US. Après avoir échoué, il a tenté de la charger pour la culture en. Enfin, après avoir échoué une nouvelle fois, il l'a chargée dans l'assembly principal (ce qui n'a pas été enregistré, puisque le chargement a réussi).
Toutefois, de nombreux développeurs souhaiteront voir toutes les activités du journal des liaisons. Dans ce cas, il est nécessaire d'attribuer une valeur autre que la valeur par défaut 0 à ForceLog, une valeur DWORD similaire. À ce stade, les appels de liaisons ultérieurs, que ce soit les réussites ou les échecs, seront enregistrés dans le journal. Un journal type ressemble à ceci :
Si vous sélectionnez l'une des liaisons de ressources (dans ce cas, pour Locale=en-US) et cliquez sur Afficher le journal, une fenêtre du navigateur s'ouvre et affiche un journal détaillé :
Cette entrée de journal spécifique indique que la ressource a été chargée avec succès après la première recherche dans le cache de l'assembly global (GAC) puis dans les sous-répertoires de l'application. Pour réduire le nombre de fichiers que le Common Language Runtime tente de charger et améliorer les performances, le Common Language Runtime tente uniquement de localiser la ressource dans les fichiers ayant l'extension .DLL.
Voir aussi
Outil Global Assembly Cache Tool (Gacutil.exe) | MSIL Disassembler (Ildasm.exe) | Outil Strong Name Tool (Sn.exe)