在执行过程中,光谱打开两个空白的终端窗口。第一个窗口是我想要的应用程序,其他窗口看起来像终端,里面没有任何内容。
目前我使用 focus(( 聚焦到第一个窗口。
Github问题链接:https://github.com/electron/spectron/issues/60
有谁知道发生了什么? 是ChromeDriver问题吗?
我遇到了同样的问题(只是为了澄清,仅在 Windows 上(。
显然,它是作为Windows上的Spectron的解决方法引入的:
用go编写的启动器二进制文件经常被标记为特洛伊木马或病毒。一个简单的蝙蝠文件应该被视为更无害。有关问题以及此蝙蝠文件,请参见#93。
不幸的是,使用.bat
文件的后果是不可避免地会产生这些额外的空控制台。
唯一已知的解决方法是使用您提到的.focus()
。
focus(( 和 setAlwaysOnTop(true( 的组合会有所帮助。
chaiAsPromised.transferPromiseness = app.transferPromiseness;
return app.start().then( async () => {
await app.browserWindow.focus();
await app.browserWindow.setAlwaysOnTop(true);
});
});
也许返工启动器.bat使用启动命令? 像这样:
Start "" "%SPECTRON_NODE_PATH%" "%SPECTRON_LAUNCHER_PATH%" %*
只是盯着它。
不确定管理退出失败代码,但 IIRC 不会留下外壳。 完全披露,我没有这个应用程序,这是一个路过的答案。希望对您有所帮助。