我正在尝试使用C#的Microsoft Debug Interface Access SDK.这是随Visual Studio一起安装的,但是文档似乎没有提到你如何在C#中使用它.
我在interweb上找到了示例代码,但没有关于如何链接到DIA SDK的信息.即我无法将其作为装配导入.我不认为我必须将它包含在托管C++应用程序中并将其用作COM(这将是地狱).
有一个IDL文件,这是正确的方法吗?如果是这样,怎么样?
编辑:以下将创建类型库以用作引用的程序集.粘贴到批处理文件中.
call "%VS80COMNTOOLS%\vsvars32.bat" midl /I "%VSINSTALLDIR%\DIA SDK\include" "%VSINSTALLDIR%\DIA SDK\idl\dia2.idl" /tlb dia2.tlb tlbimp dia2.tlb
Rob Walker.. 15
您需要先将IDL转换为类型库:
就像是:
midl /I "%VSINSTALLDIR%\DIA SDK\include" dia2.idl /tlb dia2.tlb tlbimp dia2.tlb
然后你可以导入tlb.
我从来没有以这种方式使用过DIA SDK,因此不知道它会有多友好.您还可以考虑直接从托管C++程序集中使用它,并为您需要的功能提供托管界面.
您需要先将IDL转换为类型库:
就像是:
midl /I "%VSINSTALLDIR%\DIA SDK\include" dia2.idl /tlb dia2.tlb tlbimp dia2.tlb
然后你可以导入tlb.
我从来没有以这种方式使用过DIA SDK,因此不知道它会有多友好.您还可以考虑直接从托管C++程序集中使用它,并为您需要的功能提供托管界面.