Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 从运行在dllhost.exe中的inproc com dll生成dmp文件_C++_Windows_Com - Fatal编程技术网

C++ 从运行在dllhost.exe中的inproc com dll生成dmp文件

C++ 从运行在dllhost.exe中的inproc com dll生成dmp文件,c++,windows,com,C++,Windows,Com,我正在编写一个在dllhost.exe代理中运行的inproc com dll,但在调试它时发现了一个问题 在我编写的exe中,我有一个顶级异常处理程序,它创建一个.dmp文件,我可以加载到windbg中,然后崩溃,我不确定如何从dllhost执行此操作。是否有其他方法可以在崩溃时从dllhost.exe生成堆栈转储?我看过这一页(http://support.microsoft.com/kb/910904),但它似乎涉及组件服务计划。是否对此进行了一些注册表设置?因为它将被安装在其他计算机上

我正在编写一个在dllhost.exe代理中运行的inproc com dll,但在调试它时发现了一个问题

在我编写的exe中,我有一个顶级异常处理程序,它创建一个.dmp文件,我可以加载到windbg中,然后崩溃,我不确定如何从dllhost执行此操作。是否有其他方法可以在崩溃时从dllhost.exe生成堆栈转储?我看过这一页(http://support.microsoft.com/kb/910904),但它似乎涉及组件服务计划。是否对此进行了一些注册表设置?因为它将被安装在其他计算机上


多亏了而不是让进程本身转储,您可以设置一个即时调试器,以便在进程崩溃时运行。对于旧版本的Windows,Dr.Watson是一个可以自动生成崩溃应用程序转储的好工具:我相信Windows Vista和更高版本已经用Windows错误报告()取代了Dr.Watson


一个更简单的工具是Sysinternals procdump(使用-e选项在未处理的异常上转储):

重复同一个问题的目的是什么?有人建议我将该问题分为两个不同的问题,所以我做了这个问题。我在对另一个问题的评论中添加了一个链接。还没有人回答这一半的问题。上周我在这个问题()中问了一个定制代理,但是你告诉我不要做。嗯,你不能指望我记住我帮助过的所有用户的名字。我最初的评论是基于你的评论,你对COM编程感到不舒服。你在后续问题中遗漏了一些东西。选择正确的方法最终取决于您,您不能假设SO用户会让自己对此负责。