我们有一个用VB6编写的业务线应用程序。 当应用程序启动时,它会检查特定的networkingpath,以查看应用程序是否有任何更新。 如果有更新,程序将以域pipe理员身份login并复制新文件。 自Windows Vista以来,这是因为UAC中断。 为了让我们的应用程序自行更新,用户必须右键单击并select“以pipe理员身份运行”。 如果用户不是他们的计算机上的本地pipe理员,Windows将要求pipe理员凭据。 他们的任何方式在组策略中指定一个特定的可执行文件可以作为pipe理员运行,而无需提示? 如果没有,有没有人有任何build议如何解决这个问题?
如果应用程序安装在Program Files和Windows vista / 7下,UAC将只允许pipe理员更改这些文件。 我可以通过几种可能的方式来规避这种安全function。 被警告 – UAC正试图阻止你在脚下射击,所以要小心。
1)(未testing)重新安装在非程序文件目录中的应用程序。 Windows只控制对特定目录的访问
2)closuresUAC。 这应该返回到Vista之前的function。
3)如果可以从命令行驱动更新,则安排定期任务以pipe理员身份运行以执行更新
4)每当有一个版本,打包更新并部署它,以便应用程序永远不需要更新。