2

我正在使用 Windows 安装程序包将 winforms 应用程序分发给多个客户端,并且由于其中一些客户端更改了其安全策略,我需要找出一种方法来为没有管理权限的用户运行应用程序更新(通过安装程序)。

在下面找到有关更新过程的一些信息: - 安装程序是使用 InstallAware 创建的 - 在更新过程中,旧版本被卸载并安装新版本。- 安装程序需要管理员权限,因为它会写入注册表并安装一些 Windows 服务。- 应用程序安装在程序文件文件夹中。

目前,我正在实施的解决方案是创建一个新的调度程序任务,它运行一个简单的控制台应用程序来检查新更新,如果存在新版本,它会下载安装程序并以静默模式执行(整个安装将执行静默,无需用户界面或任何用户干预。将使用对话框控件的默认值)。

关于此解决方案的一些注意事项: - 在更新过程中很难处理可能出现的错误。- 无法提醒用户更新进程正在运行(因为调度程序任务与不同的用户一起运行,无法与登录的用户交互)。

有没有人实现过类似的东西?这是实现我的目标的最佳方式吗?

4

1 回答 1

1

如果更新是补丁,并且您满足有关产品首次安装的特定要求并签署 MSI 和补丁,则有一种机制供受限用户应用补丁,UAC Patching 如下所述:

http://msdn.microsoft.com/en-us/library/aa372388(v=vs.85).aspx

如果您搜索 LUA Patching(它的原始名称)或 Least-privilege patching,那里有更多信息,尽管它相当模糊。如果他们制定的安全策略包括设置 DisableLUAPatching,那么您将无法使用它。

于 2014-06-22T18:33:58.433 回答