Windows 7 UAC中的Java CreateProcess错误

Windows 7 UAC中的Java CreateProcess错误,java,windows-7,uac,Java,Windows 7,Uac,我无法在Windows 7 64位工作站上以编程方式启动Exe。如果UAC关闭,那么Exe将从bean启动。如果UAC处于打开状态,则java控制台报告CreateProcess error=740,请求的操作需要提升 java bean正在工作站上使用启动Exe Process p = rt.exec(args); Have also the ProcessBuilder class. ProcessBuilder p = new ProcessBuilder(new String[] {

我无法在Windows 7 64位工作站上以编程方式启动Exe。如果UAC关闭,那么Exe将从bean启动。如果UAC处于打开状态,则java控制台报告CreateProcess error=740,请求的操作需要提升

java bean正在工作站上使用启动Exe

Process p = rt.exec(args);

Have also the ProcessBuilder class.
ProcessBuilder p = new ProcessBuilder(new String[] { "cmd.exe", "/C", m_sProg, m_sParams});

谢谢。

您的.exe似乎需要通过嵌入式清单进行提升。要启动它,必须使用或WinAPI函数

您可以尝试使用start命令来克服此限制:

如果您可以在启动时更改.exe,则可以从清单中删除requestedExecutionLevel,除非.exe确实需要管理员权限才能运行

new ProcessBuilder(new String[] { "cmd.exe", "/C", "start", m_sProg, m_sParams});