我知道有很多这样的问题,但他们并没有真正帮助。
我正在尝试创建一个打印文档(特定文档)的程序,所以我想“运行”它所在的文件夹,单击文档并按CTRL + P.所以我尝试使用Runtime
:
Process p = Runtime.getRuntime().exec("C:/Users/Rasmus/Desktop/Notepad.lnk");
我收到错误:
java.io.IOException:无法运行程序“C:\ Users \ iNsaniTy \ Desktop \ Notepad.lnk”:CreateProcess error = 193,%1不是有效的Win32应用程序
然后ProcessBuilder
(之前从未使用过,不知道它是什么)看起来像
new ProcessBuilder("C:/Users/Rasmus/Desktop/Notepad.lnk").start();
我得到了同样的错误。我之前使用过Runtime
方法并且它有效。我不知道是否重要,但从那时起我已经下载了最新版本的eclipse(eclipse neon)。有什么样的灵魂有任何解决方案吗?
答案 0 :(得分:0)
@J Doe,.lnk是实际可执行文件的简短链接。 你的例外清楚地提到了这一点。
解决方案是提供实际可执行文件的路径。如何检查可执行文件的路径。
Right CLick on .lnk > Open Properties > Path in the Target will be the actual path of the executable.
获取目标路径并将其用于ProcessBuilder或RUntime exec
的代码中