试图以编程方式将资源语言更改为 exe/dll 文件,我尝试过这样做,UpdateResource
但它不起作用,因为每个项目的语言不是资源模板的一部分,它似乎在一个结构调用者RESOURCEHEADER
中位于每个资源类型的开头...
因此访问这部分似乎有点复杂,没有 API 可以做到这一点。
剩下的唯一事情就是对结构进行逆向工程并直接更新二进制文件,但我更喜欢提前询问。
试图以编程方式将资源语言更改为 exe/dll 文件,我尝试过这样做,UpdateResource
但它不起作用,因为每个项目的语言不是资源模板的一部分,它似乎在一个结构调用者RESOURCEHEADER
中位于每个资源类型的开头...
因此访问这部分似乎有点复杂,没有 API 可以做到这一点。
剩下的唯一事情就是对结构进行逆向工程并直接更新二进制文件,但我更喜欢提前询问。
我想不出你为什么要这样做,但无论如何......
称呼
UpdateResource(hUpdate, lpType, lpName, wOldLanguage, 0, 0);
删除现有的语言资源和
UpdateResource(hUpdate, lpType, lpName, wNewLanguage, lpData, cbData);
使用新的语言标识符编写新资源,lpData
并cbData
引用现有资源数据的副本。
请注意,如果您使用 MUI,它会变得更加复杂。UpdateResource
文档有详细信息。