![]() |
1
1
这就是它应该是的样子。大多数IT部门最不希望的事情是用户随机更新软件。这可能会产生各种意外的副作用,例如与旧版本的文件不兼容、新的、可能不安全的功能等。这就是IT部门禁用Windows Update并以受控方式手动进行更新的原因。 如果用户想要软件的更新版本,他们应该向IT部门请求。这些计算机和基础设施不属于他们,他们只是从他们工作的公司借来时间,这样他们就可以完成他们的工作。 |
![]() |
2
1
只安装一个程序有问题吗?例如,它特别大吗? 运行程序需要管理员权限吗? 如果没有,很可能你不需要程序文件文件夹。
我建议您完全放弃安装到程序文件,只需将您的程序安装到位于
如果您碰巧使用.NET,请查看 ClickOnce deployment mechanism . 它有一个很好的自我更新功能,可能会让你的生活更轻松。 编辑: 刚刚看到你的最后一句话。ClickOnce可以强制用户更新。 |
![]() |
3
1
一些事情: 如果您决定将应用程序移动到文档中的某个位置,请确保应用程序将数据透明地写入安装程序的位置,例如,如果代码中有指向错误位置的硬编码路径。也许这对你来说不是问题,但可能是需要记住的事情。 当我们决定实现一个“实时更新”特性时,我们以几乎相同的方式解决了这个问题。但是我们安装了一个使用管理员权限运行的服务。一旦程序需要更新,这个服务就可以运行安装程序。使用这种解决方案,您甚至不必将应用程序移出程序文件。 干杯! 编辑: 让服务以管理员身份运行的另一个好处是。你可以用它创建一个命名管道通信,让它为你做一些事情,就像你不能作为一个普通用户那样。 |
![]() |
4
0
装载机存根是一个很好的方法。唯一的问题是当您必须更新加载器时;同样的初始问题也适用(尽管这应该很少发生)。 我能想到的一个问题是,你超越了让事情更“安全”的整个想法。因为你的可执行文件存在于一个非管理员完全可以访问的位置,所以有可能有其他东西撞击你的exe,从而破坏了安全性。 |
![]() |
5
0
你可能可以利用 AppLocker . 它可能只适用于Win7,尽管我不再运行Vista了。;) |