新的学期又开始了,刚到学校,好久没上网了,上网后发现QQ2011已经发布了测试版了。下载一看,皮肤又有了新的进化。用QQ皮肤工具解包QQ2011后发现大多的图片已被gft文件所替代了,用了几款图片工具均无法查看gft的图片内容。看来是腾讯自己定义的文件格式。

  打开了UltraEdit,把几个gft文件拖进去看了看。。。

QQ2011 皮肤资源

如上图,这样我们就可以制作一个将gft文件转换成png或是bmp的工具了。

QQ2011 皮肤资源

我们执行将需要转换的gft文件或含有gft文件的文件夹拖拽到窗体上面之后便会自动转换所有文件。

转换代码
/// <summary>
/// gft文件路径
/// </summary>
/// <param name="fileName"></param>
private void ConvertFile(string fileName)
{
string ext = string.Empty;

FileStream fs
= File.OpenRead(fileName);
byte[] data = new byte[fs.Length];
fs.Read(data,
0, data.Length);
fs.Close();

int key = data[16];//第16个字指定了图片的起始地址。

byte[] data2 = data.Skip(key).ToArray();
if (data2[0].ToString("x") == "42") //42 4D
{
ext
= "bmp";
}
else if (data2[0].ToString("x") == "89") //80 50
{
ext
= "png";
}

string newFilename = Path.ChangeExtension(fileName, ext);

FileStream fs2
= new FileStream(newFilename, FileMode.Create);
fs2.Write(data2,
0, data2.Length);
fs2.Close();

CompletedCount
++;
progressBar1.Value
= CompletedCount;
}

多余的代码就不贴了,附下载。

QQ皮肤解包工具下载。

GFT转换器下载

GFT转换器源码下载

相关文章:

  • 2021-10-19
  • 2021-11-28
  • 2021-11-28
  • 2021-11-13
  • 2021-10-07
  • 2021-11-28
  • 2021-11-23
  • 2021-12-13
猜你喜欢
  • 2021-09-28
  • 2021-11-28
  • 2021-11-14
  • 2021-12-10
  • 2021-09-19
  • 2021-11-30
  • 2021-10-07
  • 2020-09-24
相关资源
相似解决方案