读取FRX中的内容并进行替换

feng911 2005-03-22 12:50:34
用文本方式打开VB的FRM(窗体)文件后,一般控件的CAPTION可以找到,但是一些第三方控件的CAPTION找不到的。其Caption = $"Main.frx":07FC,也就是说存在FRX中,那么我怎么样把找出来并进行替换?比如说有一个CAPTION为“帮助”想把它替换为“HELP”或者是其他语言的内容。
我应该怎么样把这个“帮助”跟FRX文件中内容进行比较,如果找到就进行替换?还望高手指点。非常感谢。
...全文
434 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
homezj 2005-03-29
  • 打赏
  • 举报
回复
FRX文件中存放的是二进制数据,虽没见过Caption属性也可用二进制数据,但我想也许是种特殊方法吧!
FRX文件中存放二进制数据的读写格式,我刚才看了一下,现总结给你,参照着做,便可完成读写了。

"Main.frx":07FC指出该数据首字节在Main.frx文件的偏移为07FC,从0开始数,VB读写时应加1
这个位置并不是实际数据入口,二进制数据在写入FRX时,会在实际数据头部加上12个字节,这12个字节实际上是两个结构
Type FrxDataHead
DataLen As Long '其后整个数据的长度,不包括自已所占的4字节
End Type

Type BinDataHead
DataType As Long '数据类型标识,最常见的stdPicture类型标识为 &H746C
DataByteCount As Long '实际二进制数据的长度
End Type
紧随这两个结构之后,才是实际的二进制数据,其长度由 DataByteCount可获取
kmzs 2005-03-29
  • 打赏
  • 举报
回复
用WinHex等打开也找不到Caption所含的文本吗?
kmzs 2005-03-23
  • 打赏
  • 举报
回复
可以尝试使用16进制编辑器强写。
viena 2005-03-22
  • 打赏
  • 举报
回复
不能~

7,785

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧