我需要定期将一组更新的文件(DLL、javascript)作为补丁发布到多个不同版本的 Windows PC(vista/XP/7 等)。目前,我的网站上有一个链接,供每个用户下载 setup.exe 文件并手动安装补丁(替换现有的 DLL)。为了消除手动过程,我正在研究如何在 Windows 上自动运行一个程序(我假设这意味着一个服务),它将定期检查我的服务器是否有更新,下载它并自动触发 setup.exe(或一些替换补丁文件的类似过程)。
我本身不是 Windows 开发人员,但已经下载并尝试检查各种选项(为了不重新发明轮子),例如 Sparkle、DDay、CSAutoUpdater、Npackd,并且刚刚开始研究 Google Omaha - 但大多数人认为检查当 Windows 应用程序使用它们的库/组件启动时发生。我需要独立于我要更新的应用程序运行自动更新程序 - 所以我需要首先让所有用户运行 setup.exe,它应该安装并启动我的 Windows 服务,以便它可以每天与 Windows 一起运行以运行检查、下载和安装更新的程序。
我在stackoverflow和codeproject上找到了一些用于编写windows服务的示例代码,但找不到如何自动安装它(理想情况下,对于较新的windows版本没有UAC麻烦)。所有这些都需要使用 instalutil 或其他一些手动过程来安装和启动服务。
任何关于这方面的指导都会很棒!谢谢 - 并对冗长的问题表示歉意。当我尝试其他产品时,将更新其他结果。