Ich versuche, das Microsoft Debug Interface Access SDK von C# zu verwenden. Dies wird mit Visual Studio installiert, aber die Dokumente scheinen nicht zu erwähnen, wie Sie dies aus C# verwenden.Wie verwende ich das MS DIA SDK von C#?
Ich habe Beispielcode für interweb gefunden, aber keine Informationen zum Verknüpfen mit dem DIA SDK. I.e. Ich kann es nicht als Assembly importieren. Ich glaube nicht, dass ich es in eine gemanagte C++ - Anwendung einbinden muss und es als COM verwenden muss (das wäre die Hölle).
Es gibt eine IDL-Datei, ist das der richtige Weg? Wenn das so ist, wie?
Edit: Im Folgenden wird die Typbibliothek für die Verwendung als referenzierte Assembly erstellen. In eine Stapeldatei einfügen.
call "%VS80COMNTOOLS%\vsvars32.bat"
midl /I "%VSINSTALLDIR%\DIA SDK\include" "%VSINSTALLDIR%\DIA SDK\idl\dia2.idl" /tlb dia2.tlb
tlbimp dia2.tlb
Dank laufen. Würde das den DllImport PInvoke-Kram verwenden? – Nick
Sie haben gesagt, dass Sie "das DIA SDK auf diese Weise nie benutzt haben". Wenn Sie es nicht so benutzen, wie benutzen Sie es? – Nick
Sobald Sie tlbimp auf dem generierten tlb ausgeführt haben, sollten Sie eine Assembly abrufen, auf die Sie aus Ihrem verwalteten Code verweisen können. Die Assembly führt den COM-Interop von Ihnen aus und es ist nicht notwendig, irgendetwas zu dl-import oder P-invoice. Ich habe es nur aus unmanaged C++ –