伺服端放更新檔,客戶端小程式檢測下載覆蓋。但**主執行檔正在執行時無法覆蓋**(Windows 鎖定執行中 EXE/DLL)。
想法:先自殺主程式進程,再複製?但主程式結束後,誰來繼續複製?
Google/Baidu 搜尋無果,只能自力更生。
在 cmd 輸入 xcopy /? 發現關鍵參數:
/Z 在可重新開始的模式中複製網路檔案。
這意味著複製過程可中斷續傳。構想:寫批次檔,主程式啟動批次檔後退出,批次檔負責備份舊版、下載新版、覆蓋、重啟主程式。利用 xcopy /Z 確保網路複製可靠。
taskkill 或輪詢)。xcopy /Z /Y 從網路分享/HTTP 下載新版覆蓋。下篇將詳細實作批次檔內容與主程式啟動邏輯。