2012-05-11 101 views
3

可能重複:
Overwrite executable in C:\Program\MyProg on Windows Vista如何覆蓋我當前運行的可執行文件?

我已經應用程序用C++編寫。它正在運行。我怎麼才能讓它覆蓋自己的exe文件,以便下次啓動時它會是一個新的exe文件?

有點像自動更新?

+0

無論如何,沒有太多的重新打開它,因爲已經有很多覆蓋Windows和Linux的重複項 –

+4

@PaulR:但是關閉作爲一個副本將提供一個指針,這些(IMO )是值得的。 –

回答

2

這在實踐中並未完成。什麼是通常做的是:

原程序:

  1. 啓動一個小的 「更新」 程序
  2. 終止

更新程序:

  1. 等待原來的終止。
  2. 將原稿移開(例如,重命名爲「.old」)。
  3. 將新版本移至原位。
  4. 啓動新版本。
  5. 終止。

這遠遠更安全了,因爲在新版本到位之前,您並沒有吹走舊版本。

0
  1. 複製。
  2. 覆蓋副本。
  3. 在運行prog退出之前,創建一個低優先級的進程巫婆可以使用該拷貝來補充原件。像「自動刪除」。

這是一個解決方案,反正。我希望這會有所幫助。

0

,如果你有在運行過程控制(這是你的計劃,你可以把它知道),你應該能夠解開它,所以它可以被覆蓋,如果不是你最好的選擇是終止和重新啓動它如上所述

相關問題