使用UpdateResource()更新自己的资源

时间:2011-08-26 07:30:15

标签: c++ visual-c++ resources

我有一个应用程序,其资源需要不时地在外部更新。我希望应用程序更新它自己的资源。

UpdateResource()的问题在于它不能用于当前正在执行的进程。任何想法如何从应用程序本身更新资源,而不是编写外部应用程序来处理这个?

的问候, 安迪

3 个答案:

答案 0 :(得分:0)

您应该将资源移动到外部DLL并在更新和重新加载时卸载它 它回来了。

答案 1 :(得分:0)

这似乎不是更新应用程序资源的好方法。使用管理员权限安装程序。标准用户无法对程序可执行文件进行写访问。考虑在用户目录中保存所需的数据。例如。 %LOCALAPPDATA%。如果你真的需要资源,你也可以在那里放置一个只有资源的DLL。然后,即使在多用户场景中也很容易更新。

答案 2 :(得分:0)

您无法修改自己的可执行文件。

此外,你不能这样做。如果您从只读驱动器运行怎么办?

对于存储程序状态,有%APPDATA%,%LOCALAPPDATA%和注册表。