4

有没有人在安装 IE9 后获得了附加到 mshta.exe 的调试器?(64 位或 WOW64)

4

4 回答 4

3

如果您有 Visual Studio,请转到Tools -> Attach to Process并附加到该MSHTA.EXE过程。然后选择Script作为调试目标。

于 2013-03-21T21:44:55.413 回答
2

我使用的是 Vista x64,所以我必须应对 32 位/64 位的障碍。

HTA

  • c:\windows\system32\mshta.exe (mshta32)
  • c:\windows\syswow64\mshta.exe (mshta64)

发射

  • “mshta32 foo.hta”可能使用 mshta32 或 mshta64,具体取决于与 HTA 相关的内容
  • 如果使用“mshta64 foo.hta”也是如此
  • “cmd /C start foo.hta”会产生同样的效果。

调试器

  • 用于在 IE/HTA 中进行 JS 调试的 MS 脚本编辑器(来自 Office XP/2003)

通常我会使用debugger关键字来启动调试器,但是对于 IE9,它似乎不再这样做了。我必须先启动调试器,手动附加到 mshta.exe 进程(仅支持 32 位)。然后一切似乎工作正常!

编辑:

对于同事,不同的机器表现出不同的行为:

  • debugger关键字工作正常
  • 从调试器连接MSHTA.EXE不起作用

我还没有找到灵丹妙药。

于 2011-03-22T20:30:54.750 回答
1

尝试使用“停止”语句。这应该引发调试器对话框

于 2012-11-20T12:28:43.053 回答
1

我有同样的问题。最后拼凑了如何从两个来源使用 Visual Studio 进行调试

  1. 通过 Internet Explorer 打开脚本调试,如此此处所述
  2. 启动 Visual Studio。单击调试-> 附加到进程
  3. 运行 .hta 文件并从“附加到进程”对话框中选择正在运行的进程
于 2013-10-15T04:26:18.233 回答