CreateProcess的错误= 740,请求的操作需要提升
我有一个Web小型应用程序,我定期更新,我终于决定做一个更新程序。但是,当我在java下载更新它下载罚款。然而,当我尝试使用Runtime.getRuntime().exec(pathToFile);
解压+运行更新,我得到CreateProcess error=740, The requested operation requires elevation
CreateProcess的错误= 740,请求的操作需要提升
我怎样才能解决这个问题如果程序是一个Web小型应用程序?我不能告诉他们以管理员身份运行浏览器。我怎样才能解决这个问题?
我的一个朋友是含有约一个月此相同的问题前(他是通过一个.exe文件展开的更新),我记得这个环节大大帮助了他:http://mark.koli.ch/2009/12/uac-prompt-from-java-createprocess-error740-the-requested-operation-requires-elevation.html
我会做这个只是在你的问题下的评论(似乎不值得直接回答/解决方案),但我没有足够的代表尚未发表评论。 :-P
当使用.exec(cmd)
时,在cmd /c
前加上你的命令,这样你最终会得到类似rt.exec("cmd /c <your command>")
的东西。这将启动该流程并在需要时调用UAC。
差点错过了!我很高兴我没有阅读这个答案就没有离开这个问题:O – atoMerz 2013-11-17 09:09:41
这很好。但是如果它是一个gui程序,而不是cli程序,你必须按下按钮。 – 2017-03-19 19:10:19
一个手册工作中发现,如果不是你的应用我们的工程师之一左右,启动命令提示符,右键单击窗口,然后单击“以管理员身份运行”菜单项。在我的情况下运行.jnlp文件的工作!
原因:
当您尝试运行应用程序,你的IDE试图启动亚行,但它最终得到740个过程错误或亚行了,因为你的IDE不允许从运行adb.exe您的文件平台工具在您的sdk文件夹中。
解决方案:
- 杀adb.exe,从的eclipse.exe任务管理器在Windows杀死。
- 关闭Eclipse和断开你的手机,然后重新启动和禁用USB调试和重新启用。
- 转到eclipse图标右键单击并选择以管理员身份运行
- 将它连接到您的设备并运行您的应用程序。
一个黄金提示 - 始终以管理员身份运行您的eclipse,sdk manager,命令提示符,以便您的系统对特定应用程序给予完全权限。
在窗口7 64位
设备三星4.4 的Eclipse IDE
测试我有同样的问题,通过运行Java应用程序作为管理员, 使其永久解决它:右键单击您的应用程序,去属性>兼容性>检查“运行此程序作为管理员”
(我有一个批处理文件运行JAVA.EXE罐子....)
我所面临小号试图用命令来运行应用程序时也UCH问题:
cmd /c start <exe_file>
此命令无法运行需要管理员权限执行。 改为使用
rundll32 url.dll,FileProtocolHandler <exe_file>
命令解决了我的问题。此命令触发UAC提示,因此用户可以在应用程序启动之前提供正确的访问权限。
在我的应用程序中,我使用了PrecessBuilder::start()
函数。此函数返回java.lang.Process
实例,该实例在活动(process.isAlive() == true
)之后才会处理UAC提示,因此最好添加一些循环以等待,直到碰巧确定该应用程序已启动。
什么文件类型的更新? – 2011-05-02 04:48:55
Win32可执行文件windows应用程序 – Kyle 2011-05-02 04:50:30