Hoe kan ik logboekregistratie van Assembly-bindingen inschakelen?

Ik krijg de melding: “Kon bestand of assembly ‘Bla’ of een van zijn afhankelijkheden niet laden. Er is geprobeerd een programma met een onjuist formaat te laden.”

Een deel van de gedetailleerde informatie zegt:

“WRN: Logboekregistratie van assemblagebindingen is uitgeschakeld.
Om logboekregistratie van fouten in de assembly-binding in te schakelen, stelt u de registerwaarde [HKLM\Software\Microsoft\Fusion!EnableLog] (DWORD) in op 1.
Opmerking: er is een prestatieverlies verbonden aan het loggen van fouten in de assembly-binding.
Om deze functie uit te schakelen, verwijdert u de registerwaarde [HKLM\Software\Microsoft\Fusion!EnableLog].”

Dus, denkend dat dit me enig inzicht zou kunnen geven in waarom ik de bovenstaande fout krijg (misschien zou de volgende YSOD meer expliciete informatie bevatten over waarom het precies faalt), ben ik naar die locatie in het register genavigeerd, maar er is niet zo’n sleutel die ik kan zien. Wat het wel heeft is:

\Fusion 
    (Default)   value not set
    \GACChangeNotification
    \NativeImagesIndex
    \PublisherPolicy

Wat mis ik?


Antwoord 1, autoriteit 100%

Een goede plaats om uw onderzoek naar een mislukte binding te starten, is door het hulpprogramma “fuslogvw.exe” te gebruiken. Dit kan je de informatie geven die je nodig hebt met betrekking tot de bindingsfout, zodat je niet hoeft te rommelen met registerwaarden om bindingsregistratie in te schakelen.

Fuslogvw MSDN-pagina

Het hulpprogramma zou zich in uw Microsoft SDKs-map moeten bevinden, wat er ongeveer zo uitziet, afhankelijk van uw besturingssysteem:
“C:\Program Files (x86)\Microsoft SDKs\Windows\v{SDK version}A\Bin\FUSLOGVW.exe”

  1. Voer dit hulpprogramma uit als beheerder, typ vanaf de opdrachtprompt van de ontwikkelaar (als beheerder) FUSLOGVWer verschijnt een nieuw scherm

  2. Ga naar Instellingenen selecteer Alle bindingen naar schijf inschakelenselecteer ook Aangepast logpad inschakelenen selecteer het pad van de map naar keuze om het bindingslogboek op te slaan.

  3. Start IIS opnieuw.

  4. Klik in het FUSLOGVW-venster op Alles verwijderenom de lijst met eerdere mislukte bindingen te wissen

  5. Reproduceer de bindingsfout in uw toepassing

  6. Klik in het hulpprogramma op Vernieuwen. U zou dan de bindingsfout in de lijst moeten zien staan.

  7. U kunt informatie over de mislukte binding bekijken door deze in de lijst te selecteren en op Logboek weergeven

    te klikken

Het eerste waar ik naar op zoek ben, is het pad waarin de toepassing naar de assembly zoekt. Je moet er ook voor zorgen dat het versienummer van de betreffende assembly is wat je verwacht.


Antwoord 2, autoriteit 36%

Maak gewoon een nieuwe DWORD (32) onder de Fusion-sleutel. Geef de DWORD de naam EnableLog en stel deze in op waarde 1. Start vervolgens IIS opnieuw, ververs de pagina die fouten geeft en de assemblage-bindlogboeken worden weergegeven in het foutbericht.


Antwoord 3, autoriteit 12%

  1. Maak een nieuwe applicatiepool

  2. Ga naar de geavanceerde instellingen van deze applicatiepool

  3. Stel de 32-bits toepassing inschakelen in op True

  4. Wijs uw webapplicatie aan om deze nieuwe pool te gebruiken


Antwoord 4, autoriteit 4%

Voor mij was het ‘BLA’-bestand System.net.http dll die ontbrak in mijn bakmap. Ik heb het gewoon toegevoegd en het werkte prima. Veranderde geen enkele registersleutel of iets van dat soort.


5

Als u soms verschillende versies van uw aanvraag uitvoert, moet u ervoor zorgen dat u ‘BLA’ verwijdert in de map Application Bin als de versie die wordt uitgevoerd het niet nodig heeft.


6

Toen ik hetzelfde probleem had, heb ik het opgelost door het bestaande key.snkin dat project te verwijderen en een nieuwe sleutel toe te voegen.


7

In plaats van het maken van nieuwe applicatiepool, kunt u naar uw
Bestaande Application Pool – & GT; Right Click Advance-instelling- & GT; Schakel 32-bits toepassing in —– ingesteld op True


8

Deze fout komt voor mij in Windows-toepassing tijdens het bellen van server DLL van de klant. Na het opnieuw opstarten van het systeem werkt het prima

Other episodes