Nach vielen Suchen konnte ich immer noch nicht die Lösung für die Frage bekommen.Wie bekomme ich die PDB-Datei für mscorlib.ni.lib (. NET Framework 3.5)
Ich habe eine MDPP-Datei. Der Aufruf-Stack zeigt, dass es mscorlib.ni.dll verwendet. Um die Funktionsinformationen zu erhalten, muss ich die pdb-Datei herunterladen.
Die Version von mscorlib.ni.dll ist 2.0.50727.3655. Ich glaube, es kommt von .Net Framework 3.5.
Da mscorlib.ni.dll ist die native optimierte DLL, die von ngen.exe generiert wird, so muss ich ngen.exe createpdb verwenden, um PDF für diese DLL zu generieren. Hier
ngen.exe createpdb "C:\Windows\assembly\...\mscorlib.ni.dll" "C:\SymbolCache"
ist das Ergebnis:
- Ich kann nicht ngen.exe in Ordner finden "C: \ Windows \ Microsoft.NET \ Framework64 \ v3.5"
- ich finden konnte ngen.exe im Ordner "C: \ Windows \ Microsoft.NET \ Framework64 \ v2", aber es hat keine createpdb Option.
- Ich konnte ngen.exe im Ordner "C: \ Windows \ Microsoft.NET \ Framework64 \ v4.0.30319" finden und es unterstützt die Option createpdb, aber es meldet Fehler.
Microsoft (R) CLR Native Image Generator - Version 4.0.30319.18408 Copyright (c) Microsoft Corporation. Alle Rechte vorbehalten. Ungültiger Header im systemeigenen Image 'C: \ Windows \ Assembly \ NativeImages_v2.0.507 7_64 \ mscorlib \ 5cd1c2848ff40eb0a8c149706ee394fa \ mscorlib.ni.dll' gefunden. Unbekannter Fehler (Ausnahme von HRESULT: 0x80004005 (E_FAIL))
So habe ich keine Ahnung, wie 3.5 die PDB für dieses mscorlib.ni.dll von Net Framework zu erhalten.
Irgendeine Idee?
nicht sicher, ob es darauf ankommt, aber Sie führen ngen Version 4.0.30319.18408 auf einer Assembly von .net 2.0.507 (basierend auf diesem C: \ Windows \ Assembly \ NativeImages_v2.0.507). versuche, das ngen derselben Version zu verwenden. – Califf
Die gleiche Version "ngen" 2.050727 unterstützt das Argument "createpdb" nicht. – Buzz