Hintergrund:
Windows 7 mit installiertem SQL Server 2012 Data Tools und Visual Studio 2010 und 2012.
Beim Versuch, in Visual Studio ein neues SSIS-Projekt zu erstellen, wird die folgende Fehlermeldung angezeigt:
Ich bin fast sicher, dass dies durch eine falsche DLL in C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\PrivateAssemblies verursacht wird
Frage: Gibt es eine Möglichkeit, nachzuverfolgen, welche DLLs zur Laufzeit von einer Anwendung geladen werden?
Ich habe auch versucht:
C:>Taskliste /m /fi "Bildname eq devenv.exe "
bekomme aber nur das relativ wenig hilfreiche Ergebnis:
Image Name PID Modules
========================= ======== ============================================
devenv.exe 2784 ntdll.dll, wow64.dll, wow64win.dll,
wow64cpu.dll
devenv.exe 6836 ntdll.dll, wow64.dll, wow64win.dll,
wow64cpu.dll
Mir ist auch bewusst, dass dies kein Visual Studio-Problem ist, sondern eines mit SSDT-BI, das VS als Shell verwendet, aber es gibt kein SU-Tag für SSDT-BI.
Antwort1
Dieser Blog-Beitragvon Scott Hanselman bietet mehrere Techniken zum Debuggen von Assembly-Ladefehlern. Ich empfehle sowohl dieFusionsprotokollAnsatz oder dieProcess ExplorerAnsatz.
Der Assembly Binding Log Viewer (Fusion Log Viewer) sollte installiert sein, wenn Sie Visual Studio installiert haben. Er wird als Teil des Windows SDK installiert. Auf meinem Rechner lautet der Pfad: c:\program files (x86)\microsoft sdks\windows\v8.0a\bin\NETFX 4.0 Tools\FUSLOGVW.exe
Über die Schaltfläche „Einstellungen“ können Sie „Alle Bindungen auf Datenträger protokollieren“ aktivieren, um die Protokollierung zu aktivieren.
Sobald die Protokollierung aktiviert ist, erstellen Sie den Fehler und klicken Sie auf „Aktualisieren“, um alle geladenen Assemblys anzuzeigen.