【发布时间】:2017-02-28 07:45:42
【问题描述】:
通过命令行运行我的 Electron 应用程序可以正常工作,但是当我双击打包应用程序的 .exe 时,除了我的光标在做一个快速的“忙碌”动画之外什么都没有发生。我假设我的应用程序正在静默崩溃。
有什么方法可以让我从 .exe 获取错误消息或崩溃报告以帮助我了解发生了什么?
从我的应用程序目录的根目录,这两种方法都会导致我的应用程序运行良好:
node_modules\.bin\electron.cmd .electron-packager . node_modules\.bin\electron.cmd my_app-win32-x64\resources\app
环境
- 操作系统:Windows 10 周年纪念版 x64
- 节点:4.3.1
- Npm:1.14.12
- 局域电子:1.4.3
- 本地和全球电子打包程序:8.1.0
- 电子重建(用于本机模块“串行端口”):1.2.1
【问题讨论】:
-
在调试器下运行应用程序,例如NTSD。
-
我尝试按照these steps在Visual Studio中调试.exe,但唯一的调试输出是一堆“找不到或打开PDB文件。”,然后是“程序” [17448] my_app.exe' 已退出,代码为 20 (0x14)。”我还检查了 Windows 事件查看器,我的 Electron 应用程序没有。
-
设置您的调试器以在抛出异常时中断。这可能是 SEH (Win32) 异常。您还需要设置为使用 Microsoft 符号服务器。并使用 Debug -> Step Into... 启动应用程序([F11] 使用 C++ 键盘快捷键)。这将确保您也从启动过程中获得诊断信息。
-
感谢您的建议。我启用了中断所有可能的异常,启用了从 Microsoft 符号服务器下载所有符号,并将运行日志级别设置为诊断。我仍然得到与第 1 条评论相同的行为(进程以代码 20 退出,未显示错误或异常)。
-
听起来很蠢,但你在其他平台上检查过?