2

我们非常喜欢在Windows 调试工具中为遇到崩溃或挂起的客户使用ADPlus 。然而,我们遇到的最大问题是试图解释客户需要输入什么才能运行它。我们会向他们发送一个脚本,但似乎准确的咒语取决于用户是使用 32 位还是 64 位以及他们下载的调试工具的确切版本。

我们目前复杂的指令是这样的:

  • 查找调试工具的安装位置——它可能是c:\program files (x86)\Debugging Tools for windows (x86)c:\program files\Debugging tools for windows (x86)其他一些变体
  • 如果您正在运行 64 位应用程序,那么您将c:\program files\Debugging tools for windows (x64)需要
  • 找出你的用户目录是什么,它可能c:\users\jimz:\documents and settings\jim
  • 启动命令提示符并键入:

    <你上面的路径>\adplus -hang -pn myprocess.exe -o <你的用户目录>\crash_dumps

显然,这有很大的出错空间,并不是最好的用户体验,所以我希望能够向用户发送一个批处理文件或其他将检测到的脚本:

  • 调试工具的位置
  • 用户的主目录

那么,有没有办法找出调试工具的安装位置呢?如果该位置存在于注册表中,是否可以轻松地将其提取到批处理文件中?用户的主目录也可以从批处理脚本中找到吗?我的系统(Win7-64)有一个环境变量HOMEPATH。我可以假设存在吗?

4

1 回答 1

2

回答我自己的问题:看起来更简单的方法只是运行ProcDump,因为它具有挂起模式,并且可以解压缩并从任何位置运行:

procdump -h -accepteula %HOMEPATH%\Desktop\crashreport.dmp myprocess.exe
于 2011-03-11T13:06:02.620 回答