我在C中创建了一个Windows服务(使用WinAPI),当我从“服务”面板启动服务时,我希望Visual Studio自动附加到服务进程。 如何实现这一目标。 附:将MessageBox放在服务的初始化函数而不是手动附加不是我正在寻找的那种解决方案。
答案 0 :(得分:2)
我找到了解决方案。只需在注册表中添加以下密钥:
[HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion \ Image File Execution Options \ THE_NAME_OF_YOUR_SERVICE_EXECUTABLE.exe]
并添加以下值和数据:
“调试器”= “vsjitdebugger.exe”
请注意,在完成测试后,您必须删除此值,否则只要服务启动,Visual Studio就会提示附加消息。
这适用于Windows XP x32。我没有测试任何其他东西。
答案 1 :(得分:0)
放置__asm int3;在代码的开头或您想要附加调试器的地方。