请教网页中调用桌面端exe,若exe已打开,则直接执行任务;否则打开个新的exe执行任务
发布于 5 年前 作者 shuaishenk 3389 次浏览 来自 问答

exe是electron写的,安装后自动注册到windows注册表,注册表主要是加了url protocol功能;来支持网页端js的调用打开

目前js调用的代码为 <a href=‘cloud://token=123123123123123&jobId=278’>打开桌面端</a>

现在每次点这个链接,都新打开个exe,启动了个新的进程

我想若exe已打开,就不启新的exe了,直接执行任务;

请教大佬们这个需求如何实现

ps:我看百度网盘网页端可以检测到exe已打开,并不是新启一个exe

2 回复

这个需要 exe 自己去判断和实现,调用方基本没法控制(除非 exe 本身同时额外又提供了某种接口给调用端使用) 百度网盘那个例子,也是exe自身实现的,即百度网盘exe被启动后,自己去判断有没有已经存在的进程,然后通过某种方式把自己的任务(命令行参数)传送到先前的进程中,自己立即退出。

@myy 感谢大神指点,在electron github文档 https://github.com/electron/electron/blob/v1.8.4/docs/api/app.md 找到了启动单个实例的方法,监听命令行参数,处理过程跟你说的一样一样的.

1.png

回到顶部