我想要调试由App1.exe启动的App2.exe。如果App2.exe是一个dll,我可以指定一个宿主应用程序,但是这似乎对.exe文件无效。
现在我使用“附加到进程”,但如果App2.exe在我执行此操作之前崩溃,则此方法无用。
有没有一种方法可以不必手动附加到进程就能完成这个任务?
设置“调试生成的进程”调试选项。 默认情况下,它是关闭的。 当App1启动新进程时,调试器将暂停。 如果调试器尚未自动附加到新进程,请附加到它,然后继续运行。
while DebugHook = 0 do Sleep(1000);
- idursun如果你使用的是Windows操作系统,则该系统内置了相关支持。 基本上,你可以通过告诉Windows加载器在特定进程启动时启动其他进程来实现此功能。例如,你可以告诉Windows每当你单击notepad.exe时始终启动winword.exe
你可以利用这种能力,在启动进程时自动启动调试器(此功能最初引入的原因就是为了这个目的,但你不仅仅局限于启动调试器:))
你可以在这里阅读到具体实现方法。 你也可以下载Windows调试工具包,并使用GFlags代替手动操作。
我想你可以自己启动app2.exe并将任何必要的命令行参数传递给它。