【发布时间】:2017-07-02 16:46:10
【问题描述】:
如何以编程方式在非默认应用程序中打开文档,而不启动该应用程序的新实例(如果已运行)?
上下文:我想使用 Paint Shop Pro(或类似软件)以编程方式启动图像,但默认应用程序是“Windows 照片查看器”,我不会更改它。当我启动多个此类图像时,它们应该都在同一个实例中打开。
徒劳的尝试,为每张图片打开新的 PSP 实例:
Runtime.getRuntime().exec(new String[]{"<path_to_psp.exe>", pathToImage.toString()});
- Windows 10,不需要便携
- 这个程序对我来说只是实验性的,不需要考虑其他计算机或设置。
- 我熟悉
JNA,只是不熟悉 MSDN 的东西
【问题讨论】:
-
您是否尝试过将多个图像路径作为参数传递给 psp?
-
当我以后想在同一个实例中打开另一个图像时,这无济于事
-
据我所知,唯一可以控制这个的实体是 psp 本身,并且只能在 psp 设置中进行控制(如果有的话)。
-
那你怎么解释Windows可以在同一个PSP实例中打开图片,如果我把它设置为默认程序呢?
-
当我在windows中将其设为默认值时,连续打开多个文件,并使用进程资源管理器检查命令行,都只是
psp.exe /dde,仅此而已!我怀疑这类似于 html 中的 POST 消息,例如,有数据通过另一个渠道发送。这是什么意思,我怎样才能在 Java 中做 'dde'?