如何从JWrapper bundle检测正在运行的应用程序并将命令行参数传递给它

如何从JWrapper bundle检测正在运行的应用程序并将命令行参数传递给它,jwrapper,Jwrapper,我们最近决定将应用程序部署转移到JWrapper,并开始处理实现工具所有功能所需的较小更改。特别是,我们有一个自定义协议,我们使用JWrapper中的协议注册来处理该协议。我们在一个单独的(非用户可运行的)虚拟应用程序中实现这一点。当它获得参数时,它必须决定将它们移交给当前正在运行的主虚拟应用程序实例,或者使用命令行参数集生成主应用程序的新实例(我们使用JWSystem.forkVirtualApp(…)) 我们在JWrapper的URL处理常见问题页面上看到,只有MacOS能够注册事件处理程序

我们最近决定将应用程序部署转移到JWrapper,并开始处理实现工具所有功能所需的较小更改。特别是,我们有一个自定义协议,我们使用JWrapper中的协议注册来处理该协议。我们在一个单独的(非用户可运行的)虚拟应用程序中实现这一点。当它获得参数时,它必须决定将它们移交给当前正在运行的主虚拟应用程序实例,或者使用命令行参数集生成主应用程序的新实例(我们使用JWSystem.forkVirtualApp(…))

我们在JWrapper的URL处理常见问题页面上看到,只有MacOS能够注册事件处理程序来响应URL打开,并且有一个针对windows的建议

在Windows上,这是不可能直接实现的,因为Windows不支持它,但是一个专用的URL处理虚拟应用程序,然后将URL传递给主应用程序,将获得相同的结果


我的问题是,;我们如何准确地掌握正在运行的主虚拟应用程序,以及如何传递一些参数?我们是否应该使用一种特殊的方法?

您可以使用JWrapper的IPC(进程间通信)功能来实现其中的一些功能。这里有一篇老文章谈到了这一点:

以下是JWrapper中涵盖IPC的类的javadoc:

你也可以通过观看一个特定的文件来进行协调,以此作为虚拟应用程序之间通信的一种方式