如何从VB6 .frx文件中提取图像?

时间:2017-07-10 21:09:26

标签: vb6

我将一些VB6代码转换为C#。 VB6将资源存储在.frx文件中,与C#将其存储在.resx文件中的方式相同。如何将.frx文件中的图像转换为可嵌入.resx文件的内容?

2 个答案:

答案 0 :(得分:6)

这是一个部分答案 - 有一个实用程序可用于提取部分。

  

GfxFromFrx :如何从VB二进制属性文件中提取图形

作者:Brad Martinez。

example of utility in action

它将以任何格式提取资源 - 图标,位图,光标等,并保存到单个文件中。

此实用程序的原始位置位于:sitecode zip

它可能已不存在,但存档位于此处:sitecode zip

答案 1 :(得分:3)

在.frm文件中,它包含如下行:

    Image = "blah.frx" : 1234

字符串是文件(显然),数字是图像的十六进制偏移量。在该位置有一个12字节的标题,该标题的最后4个字节包含图像的长度(以字节为单位)。图像本身紧跟12字节标题。

转换为.resx只是在该图像上调用Convert.ToBase64String()。