如何在C#中使用MSDIASDK?我正在尝试使用适用于C#的Microsoft调试接口访问SDK。这是随VisualStudio一起安装的,但文档似乎没有提到如何在C#中使用它。我在网上找到了示例代码,但没有关于如何链接到DIASDK的信息。即我无法将其作为程序集导入。我不认为我必须将它包含在托管C++应用程序中并将其用作COM(这将是地狱)。使用IDL文件,这是正确的方法吗?如果是这样,如何?编辑:以下将创建一个用作引用程序集的类型库。粘贴到批处理文件中。call"%VS80COMNTOOLS%vsvars32.bat"midl/I"%VSINSTALLDIR%DIASDKinclude""%VSINSTALLDIR%DIASDKidldia2.idl"/tlbdia2.tlbtlbimpdia2.tlb您需要先将IDL转换为类型库:一些东西像:midl/I"%VSINSTALLDIR%DIASDKinclude"dia2.idl/tlbdia2.tlbtlbimpdia2.tlb然后你可以导入tlb。我从来没有这样使用过DIASDK,所以不知道它会有多友好。您还可以考虑直接从托管C++程序集使用它,并为您需要的功能提供托管接口。之前的说明有效,但需要进行一些更新。VSINSTALLDIR不再存在(当你安装了多个VS版本时它是不明确的)所以我概括并更正了说明。这是VS2015版本:"%VS140COMNTOOLS%.....VCvcvarsall.bat"amd64setDIASDK=%VS140COMNTOOLS%.....DIASDKmidl/I"%DIASDK%include""%DIASDK%idldia2.idl"/tlbdia2.tlbtlbimpdia2.tlb更改VS140以匹配您尝试使用的任何版本。这创建了我作为参考添加的dia2lib.dll-右键单击??参考,添加参考,浏览并找到文件。它有效,我现在可以构建和运行符号。如果有人遇到路径问题,这对我来说对VS2017有用。打开x86_x64交叉工具命令提示符(以管理员模式启动/programs/VisualStudio2017)cdC:ProgramFiles(x86)MicrosoftVisualStudio2017Professionalmidl/I“C:ProgramFiles(x86)MicrosoftVisualStudio2017ProfessionalDIASDKidl";"C:ProgramFiles(x86)MicrosoftVisualStudio2017ProfessionalDIASDKinclude"dia2.idl/tlbdia2.tlbtlbimpdia2.tlbDia2Lib.dll现在位于C:\ProgramFiles(x86)MicrosoftVisualStudio2017Professional文件夹。在C#代码中使用它我得到未注册的DLL异常!我不得不运行C:ProgramFiles(x86)MicrosoftVisualStudio2017ProfessionalDIASDKbin>regsvr32msdia140.dll来解决这个问题以上是C#学习教程:HowtouseC#'sMSDIASDK?如果所有分享的内容对你有用,需要进一步了解C#学习教程,希望大家多多关注。本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处:
