如何用新版本替換正在運行的EXE?如何更新正在運行的EXE?
回答
短:通過停止它,並開始新版本。
長:啓動應用程序時,操作系統將應用程序加載到內存(或至少需要的部分)中,並設置運行程序的所有內存區域。在應用程序運行時,操作系統不再需要二進制文件(您稱爲EXE)。
如果您想替換正在運行的應用程序中的代碼,可以通過替換代碼段來實現。我不知道在Windows中是可行還是簡單。另一種選擇可能是使用某種插件系統,您可以在應用程序仍在運行時替換這些應用程序的某些部分。
如果您的exe文件位於受保護的文件夾中,則會失敗,例如在啓用了UAC的程序文件下 –
事實上:如果您沒有正確的權限或具有阻止它們的策略(只是嘗試在企業環境中生存並且您一定會熟悉),Windows上的任何內容都將失敗。但列舉所有這些都超出了問題的範圍。 –
但這是你總是使用不同的過程來運行更新的原因之一。因爲該過程可以運行提升。 –
- 1. 正在更新正在運行的.exe文件c#
- 2. 不同的EXE如何在正確的運行時運行?
- 3. 解鎖正在運行的EXE文件
- 4. 如何公開有關正在運行的.NET EXE的信息?
- 5. 如何運行.exe文件?
- 6. 檢查過程wfcrun32.exe正在運行
- 7. 如何更新正在運行的WKInterfaceImage動畫?
- 8. 如何更新正在運行的服務?
- 9. 如何更新正在運行的AngularJs應用程序?
- 10. MSI/WIX:如何(自我更新)正在運行的服務
- 11. 如何快速更新正在運行的docker-compose容器
- 12. 如何更新正在運行的安裝?
- 13. 如何更新正在運行的Node.js服務器?
- 14. 如何更新正在運行的kafka連接器
- 15. Javascript - 在新進程中運行exe
- 16. 如何在CruiseControl上運行exe文件
- 17. 如何在linux中運行exe文件?
- 18. 如何在InnoSetup中運行exe文件?
- 19. 如何停止在C#中運行exe來啓動新實例?
- 20. 從Java的EXE不能正確運行
- 21. 如何知道MATERIALIZED VIEW更新是否正在運行?
- 22. 如何在運行時更新jtable?
- 23. 編碼的UI測試 - 如何更改它運行的exe
- 24. 如何在用戶運行EXE文件時覆蓋EXE文件?
- 25. 如何檢查/檢測當我運行新的exe程序?
- 26. 如何參考更新當前正在更新的行?
- 27. 如何在USB自動運行上運行.exe
- 28. 如何在ClickOnce setup.exe之前運行.exe以運行
- 29. 如何在USB自動運行中運行C .exe文件?
- 30. processStartInfo運行exe?
一個常見的方法是創建一個批處理(* .bat),並在關閉當前應用程序之前啓動它...然後,該批次將替換以前的版本... – Whiler
您不能。但是,您可以讓程序A(您的應用程序)啓動程序B(您的更新程序),然後關閉。然後,程序B可以更新程序A(未運行),然後啓動(新的)程序A.然後,如果你願意,程序A可以刪除程序B. –
更新程序啓動程序要容易得多並在開始之前更新) – whosrdaddy