Comment faire pour activer la liaison d'assembly échec d'enregistrement (Fusion) dans .NET
Comment puis-je activer l'échec de liaison d'assembly d'enregistrement (Fusion) dans .NET?
- Si quelqu'un se soucie, à utiliser la fusion enregistreur (fuslogvw.exe) lire cet article: msdn.microsoft.com/en-us/library/e74a18c4(v=VS.100).aspx il vous indique où le télécharger et d'autres infos.
- merci pour le partage! Comme un bonus - assurez-vous que vous exécutez
fuslogvw.exe
en tant qu'administrateur afin d'éviter tout problèmes de droits. - HEY! VOUS QUI LISEZ CETTE QUESTION!!! Ignorer les deux nominale la plus élevée de réponses (ceux qui vous disent d'utiliser regedit). Cette réponse ci-dessous est votre meilleur pari.
- Comme une note, assurez-vous de mettre de fusion de l'exploitant (l'fuslogvw.exe) lorsque vous avez terminé. Mon "C:\Windows\...\Temporary Internet Files\" dossier était de 4 millions de journaux en elle. La taille totale de tous les fichiers de 6 GiB, mais depuis qu'ils étaient beaucoup plus petits que la taille de cluster, le réel de l'espace disque utilisé est de 16 Go.
- Je suis en désaccord que l'installation de fuslogvw est la "meilleure" réponse. Si vous pouviez obtenir de l'outil sans avoir à installer l'ensemble du kit de développement logiciel Windows sur ce qui est probablement pas un environnement de développement, alors vous auriez un point.
- Certes, mais la réponse que vous avez un lien à ne pas couvrir tout ça.
- Faut-il le faire? Est-il vraiment à couvrir l'évidence? Peut-être vous devriez les modifier et inclure cette information importante. Comme cette conversation, je dois l'offre, il adieu. Bonne journée à vous, monsieur.
- Ne soyez pas si enfantin à ce sujet. Vous êtes en essayant de recueillir rep par la promotion d'une réponse qui, bien qu'utile, la communauté a jugées moins utiles que d'autres, qui est beaucoup plus facile et un autre qui est pratiquement le même.
- la meilleure réponse est d'utiliser ETW de trace sur la demande et pas tout le temps: stackoverflow.com/a/29374658/1466046 Ici vous pouvez transfter le fichier à un differnet PC et de les analyser en profondeur (Aussi l'image de l'événement load + piles d'appels). C'est BEAUCOUP plus profond par rapport à la vieille de la fusion du journal.
Vous devez vous connecter pour publier un commentaire.
Ajouter les valeurs suivantes pour
Assurez-vous que vous inclure la barre oblique inverse après le nom du dossier et que le Dossier existe.
Vous devez redémarrer le programme que vous êtes en cours d'exécution pour le forcer à lire les paramètres de registre.
BTW, n'oubliez pas de désactiver la fusion de la déconnexion lorsqu'il n'est pas nécessaire.
F:\sitesroot\0
. Journal `F:\fusionlog`. Créer dir avant.J'ai l'habitude d'utiliser la Fusion Log Viewer (Fuslogvw.exe à partir d'une invite de commande Visual Studio ou de Fusion de la Visionneuse de Journaux à partir du menu démarrer) - mon installation standard est:
c:\FusionLogs
(Important: assurez-vous que vous avez réellement créé ce dossier dans le système de fichiers.)N'oubliez pas de mettre de la fermeture de session une fois que vous avez terminé!
(J'ai juste posté ça sur une question similaire, - je pense que c'est le lieu ici de trop.)
fuslogvw
non seulement en tant qu'admin, mais également à partir de la correct kit de développement logiciel Windows chemin d'accès au projet Visual Studio de jeter l'exception est l'aide. Vérifier son csproj et de recherche pour le SDK dans (mon nœud sdk est nomméTargetFrameworkSDKToolsDirectory
). À l'aide d'une non correspondance fuslogvw version qui semble ne pas intercepter les exceptions (ce qui est logique...)Si vous avez le kit de développement logiciel Windows installé sur votre machine, vous trouverez la "Fusion Visionneuse du Journal" sous Microsoft SDK\Tools (il suffit de taper "Fusion" dans le menu démarrer sur Windows Vista ou Windows 7/8). Le lancer, cliquez sur le bouton Paramètres, puis cliquez sur "connexion lier échec" ou "Journal de toutes les lie".
Si ces boutons sont désactivés, retournez dans le menu démarrer, cliquez-droit sur l'afficheur de Journal, et sélectionnez "Exécuter en tant qu'Administrateur".
Définir la valeur de registre suivante:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Fusion!EnableLog] (DWORD) à 1
De désactiver, de 0 ou de supprimer la valeur.
[edit ]:Enregistrez le texte suivant dans un fichier électronique.g FusionEnableLog.reg, dans
Éditeur De Registre De Windows Format:
Puis exécutez le fichier à partir de windows explorer et d'ignorer l'avertissement sur les dommages possibles.
Vous pouvez exécuter ce script Powershell en tant qu'administrateur pour activer FL:
Remarque: vérifiez que le répertoire fourni pour la LogPath entrée existe. Si le répertoire n'existe pas, alors vos journaux ne seront plus accessibles.
et celle-ci à désactiver:
c:\FusionLog
dir de sorte que les gens n'oubliez pas que 😉La La Fusion du Journal des Paramètres de la Visionneuse de changeur de script est bar none la meilleure façon de le faire.
Dans ASP.NET, il a été difficile à certains moments pour obtenir que cela fonctionne correctement. Ce script fonctionne très bien et est cotée sur Scott, Hanselman d'Alimentation de l'Outil de liste ainsi. J'ai personnellement utilisé pendant des années et il n'est jamais let me down.
Au lieu d'utiliser un laid fichier journal, vous pouvez également activer la Fusion journal par ETW/xperf en tournant sur la DotnetRuntime fournisseur Privé (
Microsoft-Windows-DotNETRuntimePrivate
) avec GUID763FD754-7086-4DFE-95EB-C01A46FAF4CA
et laFusionKeyword
mot-clé (0x4) sur.Lorsque vous ouvrez maintenant le fichier ETL dans PerfView et regarder sous la table des Événements, vous pouvez trouver la Fusion de données:
Juste un tout petit peu d'info qui pourrait aider d'autres; si vous faites quelque chose le long des lignes de la recherche à toutes les assemblées dans un répertoire pour les classes qui en héritent/mettre en œuvre des classes/interfaces, alors assurez-vous de nettoyer rassis assemblées si vous obtenez cette erreur se rapportant à l'une de vos propres montages.
Le scénario serait quelque chose comme:
En bref: Un ---charge--> B (rassis) ---références---> C
Si cela se produit, le seul signe révélateur est l'espace de noms et le nom de la classe dans le message d'erreur. L'examiner de près. Si vous ne pouvez pas le trouver n'importe où dans votre solution, vous êtes probablement une tentative de chargement d'un état de l'assemblée.
Si vous avez déjà activé la journalisation et vous obtenez toujours cette erreur sur Windows 7 64 bits, essayez ceci dans IIS 7.5:
Créer un nouveau pool d'applications
Accédez aux Paramètres Avancés de ce pool d'applications
Définir la Activer l'Application 32 Bits à Vrai
Point de votre application web pour utiliser cette nouvelle piscine
Depuis mon tweet sur Fusion++ ai retweetet de Scott, Hanselman lui-même, je pense que je suis assez confiant pour vous en parler.
J'ai écrit une assemblée de liaison de la visionneuse du journal nommé Fusion++ et le mettre sur GitHub.
J'espère que vous et les visiteurs ici peut enregistrer certaines digne de durée de vie de quelques minutes avec elle.
Juste au cas où vous vous poseriez la question au sujet de l'emplacement de FusionLog.exe -
Vous savez que vous l'avez, mais vous ne pouvez pas le trouver? Je cherchais FUSLOVW dans les dernières années de plus et plus de nouveau. Après la déplacer .NET 4.5 numéro de version de la FUSION du JOURNAL a explosé.
Son sont des lieux où il peut être trouvé sur votre disque, en fonction des logiciels que vous avez installés:
C:\Program Files (x86)\Microsoft SDKs\Windows\v8.0A\bin\NETFX 4.0 Outils\x64
C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\x64
C:\Program Files (x86)\Microsoft SDKs\Windows\v8.1A\bin\NETFX 4.5.1 Outils\x64
C:\Program Files (x86)\Microsoft SDKs\Windows\v8.0A\bin\NETFX 4.0 Outils
C:\Program Files (x86)\Microsoft SDKs\Windows\v8.1A\bin\NETFX 4.5.1 Outils
C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin
Dans mon cas, contribué type de disque nom en minuscules
Mal - C:\someFolder
Corriger - c:\someFolder
Pour ceux qui sont un peu paresseux, je vous recommande de l'exécution de cette comme un fichier bat pour quand jamais vous voulez l'activer: