目前,当我右键单击 .DMP(或 .MDMP)文件时,“打开方式”弹出窗口上有 Visual Studio 2005 和 2008。如何在不删除任何 Visual Studio 选项的情况下将 WinDbg 添加到此列表?
我使用了“选择程序”选项,这会将 WinDbg 添加到列表中。不幸的是,WinDbg 需要一些命令行选项来打开 .DMP 文件,而我在注册表中找不到这个条目,所以我没有什么可编辑的。
目前,当我右键单击 .DMP(或 .MDMP)文件时,“打开方式”弹出窗口上有 Visual Studio 2005 和 2008。如何在不删除任何 Visual Studio 选项的情况下将 WinDbg 添加到此列表?
我使用了“选择程序”选项,这会将 WinDbg 添加到列表中。不幸的是,WinDbg 需要一些命令行选项来打开 .DMP 文件,而我在注册表中找不到这个条目,所以我没有什么可编辑的。
在 Windows XP 上,选择“选择程序...”并导航到.exe
. 完成此操作后,它将在将来出现在列表中。
Vista 可能也是如此(我面前没有它)。
在我的系统上,WinDbg.exe
位于C:\Program Files\Debugging Tools for Windows
编辑从MSDN 上的这个页面:
-IA[S]
将 WinDbg 与注册表中的文件扩展名 .dmp、.mdmp 和 .wew 相关联。尝试此操作后,将显示成功或失败消息。如果包含 S,则如果成功,则此过程静默执行;仅显示失败消息。建立此关联后,双击具有这些扩展名之一的文件将启动 WinDbg。
-IA 参数不得与任何其他参数一起使用。此命令实际上不会启动 WinDbg,尽管可能会出现一会儿 WinDbg 窗口。
因此,从命令行运行以将文件与 WinDbgWinDbg -IA
关联。.dmp
编辑 2
该站点向您展示了一个不错的 .reg 文件,用于将新的“调试此转储”条目添加到您的上下文菜单中。这样,您肯定还会拥有原始的“使用 Visual Studio 打开”选项。
尝试添加(或修改)注册表项:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.dmp\OpenWithList
它需要有'windbg.exe。程序在具有单个字母名称的值中指定,并且该字母MRUList
也在该键下的值中列出(查看 regedit 中的其他类似键以获得想法)。
我没有尝试在程序中添加命令行选项(所以我不确定它的效果如何,或者它是否可以使用某种可替换的参数)。如果你不能让它接受你需要的命令行选项,那么编写一个调用CreateProcess()
(或类似的)的简单包装程序应该可以解决问题。
我有一个与 .dmp 扩展名关联的简单批处理文件。大致定义如下:
@echo 关闭 标题windbg -z %1 启动 d:\programs\windbg\windbg.exe -W my_fav_workspace -z %1
奇迹般有效。
当然,您不会在资源管理器中获得花哨的“打开方式...”菜单项,但双击它并不是一个缺点。