2011-08-26 75 views
0

我有一個應用程序,其資源需要隨時更新。我希望應用程序更新它自己的資源。使用UpdateResource()更新自己的資源

UpdateResource()的問題在於,它不能用於當前正在執行的進程。任何想法如何從應用程序本身更新資源,而不是編寫外部應用程序來處理此問題?

問候, 安迪

回答

0

這似乎不是更新應用程序資源的好方法。程序以管理員權限安裝。標準用戶對程序可執行文件沒有寫入權限。考慮將您需要的數據保存在用戶目錄中。例如。 %LOCALAPPDATA%。如果你真的需要資源,你也可以在那裏放置一個資源專用的DLL。然後即使在多用戶場景下也很容易更新。

+0

ThanQ @frast的想法... – andy

0

您應該將資源轉移到外部DLL和卸載它,而更新並重新加載 回來。

+0

@ Anon..thanQ。將看看這是否解決目的 – andy

0

你不能修改你自己的可執行文件。

此外,你不能這樣做。如果您使用只讀驅動器運行,該怎麼辦?

用於存儲程序狀態,有%APPDATA%,%LOCALAPPDATA%和註冊表。

+0

@Eugene ...我意識到,不能修改我自己的可執行文件從這個經驗...但是我不想寫另一個應用程序來做任務,因此是一個問題。將嘗試實現其他人給出的DLL思想... ThanQ – andy