我在 C 中创建了一个 Windows 服务(使用 WinAPI),我希望 Visual Studio 在我从“服务”面板启动服务时自动附加到该服务的进程。这怎么可能实现。PS在服务的初始化函数中放置一个MessageBox而不是手动附加不是我正在寻找的那种解决方案。
问问题
87 次
2 回答
2
我找到了解决方案。只需在注册表中添加以下键:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\图像文件执行选项\THE_NAME_OF_YOUR_SERVICE_EXECUTABLE.exe]
并添加以下值和数据:
"调试器"="vsjitdebugger.exe"
请注意,您必须在完成测试后删除此值,否则 Visual Studio 将在服务启动时提示附加消息。
这适用于 Windows XP x32。我还没有测试过其他任何东西。
于 2013-09-09T06:47:00.050 回答
0
放置 __asm int3; 在代码的开头或要附加调试器的地方。
于 2013-09-06T07:23:00.093 回答