【问题标题】:CreateProcess error=740, The requested operation requires elevationCreateProcess 错误=740,请求的操作需要提升
【发布时间】:2011-05-02 04:44:50
【问题描述】:

我有一个定期更新的网络小程序,我最终决定制作一个更新程序。但是,当我在 java 中下载更新时,它下载得很好。但是,当我尝试使用 Runtime.getRuntime().exec(pathToFile); 解压缩 + 运行更新时,我得到 CreateProcess error=740, The requested operation requires elevation

如果程序是网络小程序,我该如何解决这个问题?我不能只告诉他们以管理员身份运行浏览器。我该如何解决这个问题?

【问题讨论】:

标签: java


【解决方案1】:

使用.exec(cmd) 时,请在您的命令前加上cmd /c,这样您最终会得到类似rt.exec("cmd /c <your command>") 的内容。这将启动进程并在需要时调用 UAC。

【讨论】:

  • 这非常有效。但如果它是 gui 程序而不是 cli 程序,则无论如何都必须按下按钮。
【解决方案2】:

我在尝试使用命令运行应用程序时也遇到过这样的问题:

cmd /c start <exe_file>

此命令无法运行需要管理员访问权限的可执行文件。 而是使用

rundll32 url.dll,FileProtocolHandler <exe_file>

命令解决了我的问题。此命令触发 UAC 提示,因此用户可以在应用启动之前提供正确的访问权限。

在我的应用程序中,我使用了PrecessBuilder::start() 函数。此函数返回 java.lang.Process 实例,该实例在用户处理 UAC 提示之前将处于活动状态 (process.isAlive() == true),因此最好添加一些循环以等待它碰巧考虑确定应用已启动。

【讨论】:

  • 唯一对我使用 ProcessBuilder 有效的解决方案!谢谢。
【解决方案3】:

原因:

当您尝试运行您的应用程序时,您的 IDE 会尝试启动 adb,但最终会出现 740 进程错误或 adb 关闭,因为您的 IDE 不允许从您的 sdk 文件夹中的平台工具运行 adb.exe 文件。

解决方案:

  1. 在 Windows 的任务管理器中杀死 adb.exe,杀死 eclipse.exe。
  2. 关闭eclipse并断开手机并重新启动它并禁用USB调试并再次启用它。
  3. 进入eclipse图标右键选择以管理员身份运行
  4. 将其连接到您的设备并运行您的应用程序。

黄金提示 - 始终以管理员身份运行您的 eclipse、sdk 管理器和命令提示符,以便您的系统为特定应用程序提供完全权限。

在window 7 64bit上测试

设备三星 4.4 日食ide

【讨论】:

  • 关闭 Eclipse 和断开连接我的手机正常工作!谢谢,@demongolem!
【解决方案4】:

我有同样的问题,通过以管理员身份运行 java 应用程序来解决它, 使其永久化:右键单击您的应用程序,转到属性 > 兼容性 > 选中“以管理员身份运行此程序”

(我有一个批处理文件运行 Java.exe -jar ....)

【讨论】:

    【解决方案5】:

    如果您的问题出在 Android Studio 上,那么杀死 adb.exe 的任何实例都可以解决。

    【讨论】:

      【解决方案6】:

      我们的一位工程师发现的一项手动工作,如果不是您的应用程序,请启动 cmd 提示符,右键单击窗口并单击“以管理员身份运行”菜单项。在我的情况下运行 .jnlp 文件工作!

      【讨论】:

        【解决方案7】:

        我也遇到过这个问题,但是当尝试使用前缀运行 Runtime.getRuntime().exec(filepath) 时 “cmd /c”到它完美运行的文件路径

        你的代码应该像Runtime.getRuntime().exec("cmd /c &lt;filepath&gt;")

        注意: filepath - 定位文件所需的完整目录列表

        在我的代码中:

             String filepath="C:\\Users\\MSI\\Downloads\\AutomationInstaller.exe"
        

        【讨论】:

          猜你喜欢
          • 2020-09-26
          • 2011-10-30
          • 2021-09-05
          • 1970-01-01
          • 2013-02-08
          • 2014-10-25
          • 2021-11-17
          • 1970-01-01
          • 2011-05-10
          相关资源
          最近更新 更多