Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 是否可以使用Visual Studio构建WinDBG扩展?_C++_Windows_Visual Studio 2010_Visual Studio_Windbg - Fatal编程技术网

C++ 是否可以使用Visual Studio构建WinDBG扩展?

C++ 是否可以使用Visual Studio构建WinDBG扩展?,c++,windows,visual-studio-2010,visual-studio,windbg,C++,Windows,Visual Studio 2010,Visual Studio,Windbg,要生成WinDBGdebuggerextensions,我们必须使用WDK附带的生成实用程序,还是可以使用Visual Studio? (我尤其对VS2010 SP1感兴趣。) 根据Windows调试工具的文档,唯一的选项应该是Build utility: Windows调试|调试器引擎和扩展API |介绍 所有调试器扩展都应该使用 构建实用程序。生成实用程序包含在Windows驱动程序工具包中 (WDK) …但可能文档没有更新 此外,为什么构建实用程序是构建WinDBG扩展的唯一选项? 这里隐

要生成WinDBGdebuggerextensions,我们必须使用WDK附带的生成实用程序,还是可以使用Visual Studio?
(我尤其对VS2010 SP1感兴趣。)

根据Windows调试工具的文档,唯一的选项应该是Build utility:

Windows调试|调试器引擎和扩展API |介绍

所有调试器扩展都应该使用 构建实用程序。生成实用程序包含在Windows驱动程序工具包中 (WDK)

…但可能文档没有更新

此外,为什么构建实用程序是构建WinDBG扩展的唯一选项?
这里隐藏了什么“陷阱”?

对于WinDBG扩展没有什么特别之处-只需构建一个DLL,使用正确的函数名和调用约定,然后就可以了。因此,视觉研究应该能够做到这一点

您确实需要为DLL生成自己的.def文件以导出函数

本页介绍如何使用
nmake
执行此操作。在VS中完全可以执行相同的步骤


对于WinDBG扩展没有什么特别之处-只需构建一个DLL,使用正确的函数名和调用约定,就可以了。因此,视觉研究应该能够做到这一点

您确实需要为DLL生成自己的.def文件以导出函数

本页介绍如何使用
nmake
执行此操作。在VS中完全可以执行相同的步骤


谢谢。。。所以我假设在前面提到的段落中有一个“文档错误”。也许吧。我更愿意将其视为“这是我们在MS中的做法,我们建议您也这样做”。虽然它使用了“应该”这个词,但我认为它实际上并没有说“你必须这样做”,它只是说“你可以这样做”。当然,“build”的一个优点是它使用WDK使用的编译器版本,这(很可能)也是WDK附带的WinDBG使用的编译器版本,因此不会出现任何导致问题的小编译器错误-这可能是他们建议您这样做的原因。当然,在我看来,MS作者可能有不同的含义。谢谢。。。所以我假设在前面提到的段落中有一个“文档错误”。也许吧。我更愿意将其视为“这是我们在MS中的做法,我们建议您也这样做”。虽然它使用了“应该”这个词,但我认为它实际上并没有说“你必须这样做”,它只是说“你可以这样做”。当然,“build”的一个优点是它使用WDK使用的编译器版本,这(很可能)也是WDK附带的WinDBG使用的编译器版本,因此不会出现任何导致问题的小编译器错误-这可能是他们建议您这样做的原因。当然,在我看来,MS作者可能有不同的含义。