gpt4 book ai didi

node.js - 如何从 Visual Studio 调试 C++ Electron 插件

转载 作者:可可西里 更新时间:2023-11-01 10:41:06 27 4
gpt4 key购买 nike

我正在尝试对在一个简单的 Electron 应用程序中使用的 C++ 插件进行逐步调试。问题是断点永远不会被触发,即使我可以看到 Visual Studio 正确加载了 .pdb 文件。我做错了什么?

我使用的是 Visual Studio 2019 和 Electron 5.0.4。该插件工作正常,我可以在 Init 函数中放置一个断点:

api_value Init(napi_env env, napi_value exports)

并且调试器在启动时中断。

然而,当我尝试调试一个但其他成员函数永远不会中断

napi_value MyObject::PlusOne(napi_env env, napi_callback_info info) 

注册于:

status = napi_wrap(env, jsthis, reinterpret_cast<void*>(obj), MyObject::Destructor, nullptr, &obj->wrapper_)

我尝试使用 electron.exe 作为运行时来启动我的插件项目,我尝试将我的插件项目调试器附加到 electron 的主线程,它仍然不起作用。

我希望断点在每个方法中都停止,并理解为什么它现在不起作用。

最佳答案

0) 全局安装“electron-rebuild”模块

1) 在您要调试的 native 模块的目录中运行此命令。包含插件“package.json”文件的文件夹

electron-rebuild --version [CURRENTLY_USED_ELECTRON_VERION] --debug

2) 正常运行你的 Electron 应用

3) 打开在模块的 build 文件夹中找到的 Visual Studio 项目。

4) 通过附加到所有 Electron 进程进行调试。在 Visual Studio 2019 中:调试 -> 附加到进程 -> 找到你的 electron.exe 进程 -> 全选 -> 按附加

5) 放置断点,现在它们应该正确命中

关于node.js - 如何从 Visual Studio 调试 C++ Electron 插件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56651834/

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