使用批处理脚本中的参数运行exe文件,而使用应用程序中运行

时间:2018-10-19 16:41:31

标签: java batch-file

我有一个非常奇怪的问题,我无法解决。基本上,我有一个运行的蝙蝠脚本:

  

cmd / c“” C:\ Program Files(x86)\ XX \ YYY \ EEE \ int.exe“” parameter1   parameter2 parameter3

这可以正常工作,并启动 int.exe ,后者会根据参数启动另外两个第三方应用程序。

然后我也运行相同的命令,但是基于以下内容从我们的应用程序中运行:

  

var CMD =“ \” \“ C:\ Program Files(x86)\ XX \ YYY \ EEE \ int.exe \” \“”;

     

... Runtime.getRuntime()。exec(“ cmd / c” + CMD +“ parameter1 parameter2   parameter3“);

这也可以使用正确的参数正确启动int.exe。我可以看到,在任务管理器和两个int.exe启动的命令行中查找的内容完全相同。但是,当从运行时exec启动启动时,形成我们的应用程序,则只有int.exe运行后应该启动的两个第三方应用程序之一才会启动。我只是不明白这怎么可能。 int.exe的运行方式完全相同,为什么上面的第二个示例也不能启动第二个应用程序?有人知道会有什么不同吗?

编辑:我刚刚看到,如果将 int.exe 更改为始终以管理员身份运行,它将同样从Java成功运行两个应用程序。这很奇怪,因为我可以运行cmd脚本,即使我在操作系统级别使用无管理员帐户也可以正常工作

0 个答案:

没有答案