【发布时间】:2011-10-03 23:17:00
【问题描述】:
这是场景:
我编写了一个应用程序并从 Visual Studio 安装程序项目创建了一个安装程序(我生成了一个 MSI 文件)。我以管理员身份将应用程序安装到 Program Files 目录中。
当用户使用该应用程序时,我希望它能够自动更新(不打扰管理员)。现在,Windows 7 和 Windows Vista 具有 UAC 来保护 Program Files 目录。所以,我真的不确定从这里去哪里。
我想我在某处读到 ClickOnce 能够安装应用程序更新,而无需打扰用户获得管理权限。
- 有没有可以帮助自动更新的应用程序?
- 如果有这样的应用程序,它们如何绕过提升的权限?基本上,难道不能以某种方式复制这些应用程序在 .NET (C#) 中所做的事情吗?
我真的只是希望有一种简单的方法来使用 MSI 文件进行静默更新,因为我不希望普通用户拥有管理访问权限,也不希望管理员被此任务所困扰。此外,显然不能硬编码,因为用户名和密码很容易更改。
【问题讨论】:
-
ClickOnce 应用程序未安装到 c:\program 文件中。所以这很容易。谷歌浏览器是另一个例子,安装在 C:\Users\YourName\AppData\Local
标签: .net windows-7 windows-vista windows-installer uac