6
A
回答
0
是的,这是可能的,但不是特别容易。它基本上需要编写一个资源编译器(至少对于要修改的资源类型)。
例如,我曾经编写过一个菜单编译器,它在运行时将输入从数据库中取出(然后将结果保存回数据库)。如果源表不变,则使用现有资源,否则将重建。
在菜单资源(我相信对话框)的情况下,棘手的问题是某些成员只能根据标志设置以及严格的对齐要求而存在。
在修改.exe中已经存在的资源的情况下,您需要将资源数据复制到内存缓冲区中(如果要添加新元素,可使用额外的空间)(使用FindResource,LockResource,内存副本然后UnlockResource)。
做出更改后,使用其中一个间接创建函数(即CreateMenuIndirect)并传递缓冲区的地址。
资源API允许将这样的缓冲区写回应用程序二进制文件,但如果使用代码签名会破坏签名,所以要非常小心。我也不知道该API是否适用于实际运行的程序。
相关问题
- 1. 在C#中修改资源?
- 2. C#修改资源文件
- 3. 在运行时去除/修改静态Qt资源
- 4. 修改ObservableCollection <T>在运行时声明为资源
- 5. ASP.NET在运行时从.resx文件修改资源值
- 6. 在运行时更改资源
- 7. 在运行时修改Vtable
- 8. 在运行时修改
- 9. 在运行时修改propertyGrid
- 10. 在运行时修改persistence.xml
- 11. 在运行时修改persistence.xml
- 12. C#运行时更改WPF动态资源
- 13. 更改语言时修复资源
- 14. ASP.NET在运行时创建资源
- 15. Java Swing:在运行时添加资源
- 16. 在运行时访问资源
- 17. 自定义资源在运行时
- 18. WPF - 编辑资源在运行时
- 19. 运行时修改strings.xml
- 20. PHP运行时类修改
- 21. 从资源创建新对象并修改资源会改变资源
- 22. 是有可能在运行时间从代码改变资源
- 23. 如何改变资源字典颜色在运行时
- 24. Silverlight:在运行时更改静态资源的属性
- 25. 如何在运行时更改布局资源文件夹?
- 26. 如何在运行时更改drawable资源?
- 27. 在运行时更改嵌入的资源文件
- 28. Qt:我们可以在运行时更改资源内容吗?
- 29. 修改后运行开源php项目
- 30. 在运行时创建jrxml文件并在运行时修改
您的意思是Windows资源?这是平台特定的,是吗? – 2008-12-04 00:50:41