我有一个 .NET 进程,有时会在某些 3rd 方库的本机代码中出现 AccessViolationException 失败。
发生这种情况时,我希望有完整的内存迷你转储。我已阅读此页面 - http://support.microsoft.com/kb/931673,“收集用户模式转储”部分并按照文章说明配置注册表。但是,当崩溃发生时,会创建一个非常小的报告 - 看不到 *.mdmp 文件。
现在,我知道如何在 ADPLus 中运行该进程,或者如何使其附加到已经运行的进程。但它需要显式运行 ADPLus。
我想知道如何将 Windows 配置为自动运行 ADPlus,每次我启动有问题的进程时,无论它是如何启动的 - 从 msbuild、双击、从控制台脚本等......
意思是,当运行 aaaa.exe 时,会被运行带有某些标志的 ADPlus 替换,这些标志会生成带有相应命令行选项的 aaaa.exe。
我知道 Windows 中有图像执行标志,可以做到这一点,但我不知道细节。
谢谢。
编辑1
保留命令行参数很重要,因此如果使用标志运行 aaa.exe,那么从调试器运行 aaa.exe 时当然也应该如此。