gpt4 book ai didi

c++ - 调试器已附加 - cscript

转载 作者:行者123 更新时间:2023-11-28 07:48:07 24 4
gpt4 key购买 nike

我有一个简短的 JScript,它创建一个事件的 X 对象并调用一个函数。那个事件的 X 对象是用 C++ 编写的。当我运行命令 cscript scriptName.js//X 时,我以 Debug模式启动 VS2012。比起我尝试附加一个调试器,但如您所知,已经附加了一个。

有没有办法重新附加调试器或以某种方式连接到它?

我目前的解决方案是不使用 JScript 并从 C++ 调用代码。

最佳答案

您想使用哪个调试器?Visual Studio 还是 WinDBG?您真的需要同时调试 JavaScript 代码和 C++ 代码吗?

如果后者对您来说不是问题,并且您想专注于 C++ 代码,则在 Visual Studio(或 WinDBG)中只需调试 cscript.exe,无需/x 标志。甚至不需要附加,您可以从 Visual Studio 使用 F5 开始调试。

  1. 在 Visual Studio(2008、2010 或 2012 - 它们都可以工作)中,右键单击 ActiveX 项目(即 C++ 项目)。
  2. 转到:配置属性 -> 调试
  3. 在命令中输入 cscript 完整路径:C:\Windows\System32\cscript.exe
  4. 在命令参数中输入你的 JS 文件的完整路径
  5. 在您的 ActiveX 代码上放置一个断点(在 dllmain 或您的 COM 对象的构造函数上)
  6. 按 F5
  7. Visual Studio 会提示缺少 cscript 符号。没关系。继续前进。
  8. 你会到达你的断点

需要考虑的几点:

  1. 设置符号路径以包含 Microsoft 符号。这样,您将看到调用您的代码的函数的名称(oleaut32.dll 和 friend )。

此外,这是默认设置,但请确保:

  1. 同一属性框中的调试器类型可以是 Native 或 Auto。

关于c++ - 调试器已附加 - cscript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14433077/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com