Tag: 窗口

电子4 Windows – >电子build设者 – >自动更新:自定义解决scheme

我正在使用Electron构buildWindows应用程序。 为了打包和分发,我正在使用电子生成器 。 电子build设者依赖于许多包,而自动更新它使用松鼠窗 。 我一直在Windows上自动更新3天,最后我提出了一个似乎没有问题的工作解决scheme。 我不会去详细介绍我所尝试过的,并且失败了。 相反,我会在这里发布我提出的解决scheme。 我会和你们分享一下,看看你们是否可以向我指出任何会使我的系统失败的缺陷,或者如果这确实是一个可靠的解决scheme,那就帮助那些正在挣扎的人。 由于后一个原因,我发布了一些比所需要的更多的代码,希望能够帮助其他人。 逻辑如下: 如果当前可执行文件的path中的子文件夹fullupdate不存在(请参阅后面的说明),我们连接在线服务器并通过发送当前应用程序版本检查是否有更新; 如果没有更新,什么也不要做。 如果有更新,我们指示服务器返回一个包含url的jsonstring,我们可以从中下载electron-builder生成的.exe安装程序。 注意:不是.nupkg (服务器代码未提供:-) )。 我们下载文件并将其保存在我们的应用程序当前保存的本地文件夹中的子文件夹fullupdate中。 这应该是“安全”的,因为electron-builder将应用程序保存在当前用户文件夹AppData ,所以我们不应该有权限问题。 在下载结束时,我们在fullupdate文件夹内创build一个新的文件update ,以确保下载成功完成。 我们也可以重命名文件,但我更喜欢这种方式。 下次打开应用程序时: 如果文件夹fullupdate存在,我们检查文件update存在。 如果它不存在,下载没有完成,所以我们删除文件夹fullupdate ,再次调用远程服务器重新开始。 否则,如果文件update存在,我们启动我们下载的.exe文件,并返回true。 这将阻止应用程序打开主窗口。 很酷的事情是,更新程序将删除保存在AppData中的应用程序的旧版本(同时保留本地用户数据),并将其replace为新版本。 这样我们也将摆脱fullupdate文件夹。 现在代码: // we want to run this only on windows var handleStartupEvent = function() { if (process.platform !== 'win32') { return false; } ///////////////// […]

我的node.js服务器挂起 – 直到我发出Ctrl + C

我在AWS上运行了一个nodejs + mysql应用程序(EC2,RDP)。 我经常遇到上述问题。 谷歌search暗示,这可能是由于在后台运行的工作。 这里是我发现的东西:“这听起来像是你已经阻止了一个阻止事物的过程,并且Ctrl + C正在杀死那个。 这可能是原因吗? 它可以是别的东西吗? 如果是这样,我可以采取什么行动? 有没有办法查看所有在后台运行的作业?

如何处理在node-webkit中正确打开_blank窗口的链接?

我正尝试使用new-win-policy事件来处理打开新窗口的链接点击。 https://github.com/rogerwang/node-webkit/wiki/Window#new-win-policy win.on('new-win-policy', newWinPolicyHandler); function newWinPolicyHandler(frame, url, policy) { gui.Window.open(url, { position: 'center', frame: true, toolbar: true, focus: true }); policy.ignore(); } 点击链接后,处理程序不会被调用。 我在控制台中收到了消息: [17120:1029/214512:INFO:CONSOLE(138)] ""Remove zombie callback for window id 1 ev: new-win-policy"", source: window_bindings.js (138) 不知道该怎么办…

从nodejs中的string调用函数

与nodejs中的window [my_func_name]等效的是什么? 我正在从stdin读取一个string,如果它是一个函数名称,我想执行它。 我认为全球[my_func_name]可能工作,但不幸的是它不。