一些调试手段,记录一下。
问题描述:
进程process_A中启动进程process_B (通过CreateProcess(...),或者其它),process_B的启动参数为process_A传入。现调试process_B。
解决办法:
1)、在process_B的main中添加“__debugbreak()”,要添加在靠前位置,如下所示:
#include <iostream>
#include <Windows.h>
int main(int argc, char* argv[])
{
#if 1
__debugbreak();
#endif
//此处添加用户代码
return 0;
}
2)、启动process_A,系统弹出对话框“process_B已停止工作”,选择“调试程序”。
3)、之后弹出调试窗口,选择process_B所在解决方案。
4)、触发断电,选择中断。
5)、进入process_B解决方案,F5继续进行调试。