我需要定期將更新後的一組文件(DLL,javascript)作爲補丁發佈到各種版本(vista/XP/7等)的多個Windows PC中。目前,我在我的網站上有一個鏈接,供每個用戶下載setup.exe文件並手動安裝修補程序(替換現有的DLL)。爲了消除手動過程,我正在研究如何在Windows上自動運行程序(我假設這意味着服務),它會定期檢查我的服務器是否有更新,下載並自動觸發setup.exe(或某些類似的過程來取代補丁文件)。我不是Windows開發者本身,但已經下載並試圖檢查各種選項(爲了不重新發明輪子),如Sparkle,DDay,CSAutoUpdater,Npackd,並且剛開始研究谷歌奧馬哈 - 但是大多數人認爲當Windows應用程序開始使用他們的庫/組件時會發生檢查。我需要運行獨立於應用程序的autoupdater,因此我需要先讓所有用戶運行一個setup.exe,它應該安裝並啓動我的Windows服務,以便它可以每天運行Windows以運行程序檢查,下載並安裝更新。如何爲作爲服務運行的Windows應用程序創建自動更新程序?
我發現了一些用於在stackoverflow上編寫windows服務的示例代碼,codeproject也是,但是找不到如何自動安裝它(理想情況下,對於較新的Windows版本沒有UAC麻煩)。所有需要使用instalutil或其他手動過程來安裝和啓動服務。
對此的任何指導將是偉大的!謝謝 - 並且對這個冗長的問題表示歉意。當我嘗試其他產品時會更新結果。
你想要一個MSI解決方案嗎?或者你是否願意自己寫一些代碼?修補程序機制是否需要包含交互式用戶界面? – selbie
我希望儘可能保持更新 - 但不能編輯主應用程序代碼。我只能替換這些文件,並在重新啓動時更新應用程序。我不是一個Windows開發人員,但經驗豐富,足以複製粘貼和修改論壇/谷歌搜索的示例代碼...我使用#Developer而不是Visual Studio - 但有權訪問VS2005(.Net2爲我的主要應用程序)。不確定MSI做什麼。 – Surge