【问题标题】:Adobe AIR NativeProcess - UAC problems when trying to run update installersAdobe AIR NativeProcess - 尝试运行更新安装程序时出现 UAC 问题
【发布时间】:2011-04-04 09:10:15
【问题描述】:

我正在尝试使用 Adob​​e AIR 2 的 NativeProcess API 来模拟 ApplicationUpdater,但是当我尝试在启用了 UAC(用户帐户控制)的计算机上运行下载的 AppUpdater.exe 文件时遇到了问题。

在未启用 UAC 的情况下运行时,AppUpdater 会照常打开并显示标准的 Adob​​e 替换对话框。启用 UAC 后,什么都不会发生。

运行了一些跟踪之后,当我调用 NativeProcess.start() 时似乎出现了问题 - 代码似乎在此时停止运行,并且没有运行以下退出应用程序以准备 AppUpdater 的行跑步。

我为所有可能引发的事件和错误事件添加了侦听器,并在每个事件中添加了日志记录,但这些都没有产生任何输出。

这个问题似乎只影响安装可执行文件(Windows 发出警告的那些会更改您计算机上的设置)。在同一应用程序中的同一台计算机上调用 java.exe -jar .... 可以正常工作。

我很茫然,所以任何帮助都会很棒!

【问题讨论】:

    标签: apache-flex actionscript-3 air mxml


    【解决方案1】:

    在直接与 Adob​​e 交谈后,我发现 NativeProcess 使用的 Windows API 无法提升权限,这就是安装程序无法工作的原因。解决方法是使用 File.openWithDefaultApplication,它使用可以提升权限的不同 API,但这仅适用于本机打包的 AIR 应用程序(这对我们的应用程序来说很好,因为它已经打包在本机安装程序中:))

    【讨论】:

      【解决方案2】:

      adobe 的答案是 http://kb2.adobe.com/cps/404/kb404888.html

      但对于实际步骤,您应该确定应用程序用户权限并确定是否启用了 UAC,如果是,则警告最终用户。

      我希望您对 Adob​​e Air 的 windows-thing 无能为力。

      【讨论】:

      • 感谢您的帮助。不幸的是,我们不能真正要求所有客户在每次需要更新我们的应用程序时都禁用 UAC!
      猜你喜欢
      • 2012-12-13
      • 2022-01-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-10-22
      • 2011-01-16
      • 1970-01-01
      相关资源
      最近更新 更多