找回丢失的资源编辑器&VB6的LoadResData函数BUG
作者:admin 日期:2008-06-27
问题是由CSDN上一个帖子引出来的: [点击访问]
刚开始我还没注意这个问题.
后来干脆自己试了一下,果然如帖主所说,报"找不到资源".
而我生成了EXE后再用eXeScope看,101标号的图标资源又是确实存在的.
于是就在想,会不会是VB6的一个BUG,便用关键字"LoadResData BUG"搜索了一下,找到如下文章:
http://support.microsoft.com/kb/190477/zh-cn
解决方案里面已经给出了,就是图标文件用LoadResPicture函数取出.
而如果想释放出来的资源,一律用LoadResData+自定义资源类型来搞定.
另,我在做这个测试时发现资源编辑器不见了.
在外接程序管理器里面也找不到.
想了想之前是使用过那个"VB6IDE初始化的REG文件",估计让那东西给搞没了...
于是网上搜索了一把,发现有人说资源编译文件就是Wizards目录下的RC.EXE.
就想,那应该是有个DLL是ADDIN,它调用了RC.EXE吧
就看看那个目录下哪个DLL最像,结果发现了一个叫RESEDIT.DLL的DLL,嘿嘿~~看文件名也估计是它了.
引用,再到外接程序管理器里一看,哈,回来了~~
刚开始我还没注意这个问题.
后来干脆自己试了一下,果然如帖主所说,报"找不到资源".
而我生成了EXE后再用eXeScope看,101标号的图标资源又是确实存在的.
于是就在想,会不会是VB6的一个BUG,便用关键字"LoadResData BUG"搜索了一下,找到如下文章:
http://support.microsoft.com/kb/190477/zh-cn
解决方案里面已经给出了,就是图标文件用LoadResPicture函数取出.
而如果想释放出来的资源,一律用LoadResData+自定义资源类型来搞定.
另,我在做这个测试时发现资源编辑器不见了.
在外接程序管理器里面也找不到.
想了想之前是使用过那个"VB6IDE初始化的REG文件",估计让那东西给搞没了...
于是网上搜索了一把,发现有人说资源编译文件就是Wizards目录下的RC.EXE.
就想,那应该是有个DLL是ADDIN,它调用了RC.EXE吧
就看看那个目录下哪个DLL最像,结果发现了一个叫RESEDIT.DLL的DLL,嘿嘿~~看文件名也估计是它了.
引用,再到外接程序管理器里一看,哈,回来了~~

评论: 0 | 引用: 0 | 查看次数: 1440