找回密码
 加入
搜索
查看: 12721|回复: 39

[GUI管理] 请教图标是如何用AU3写入这个dat文件的

 火... [复制链接]
发表于 2010-6-8 18:34:11 | 显示全部楼层 |阅读模式
我能确认的是,这个文件保存的是图标,是用AU3将exe的图标提取并写入其中的。并且,还可以用AU3将这个文件内的图标提取出来显示在listview中。

但至今还没有高手公开这种方法,希望有朋友能提供一下思路,谢谢。


图标.dat

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×
发表于 2010-6-8 21:11:57 | 显示全部楼层
看你没人 帮你踩一下
发表于 2010-6-8 21:12:27 | 显示全部楼层
提问都是10金币的真好赚
发表于 2010-6-8 22:58:11 | 显示全部楼层


FileOpen ( "文件名" [, 模式 ] )
16 = 强制使用二进制(字节)模式(参考注意)

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×

评分

参与人数 1金钱 +20 收起 理由
afan + 20

查看全部评分

 楼主| 发表于 2010-6-9 00:01:03 | 显示全部楼层
本帖最后由 itljl 于 2010-6-9 00:03 编辑

回复 4# lynfr8

谢谢兄弟你的回复,但我提供的文件里保存了多个ICO,并且可以读取多个ICO显示到LISTVIEW哦。你这个只能读写一个ICO文件啊。

有写入三个ICO文件到一个DAT文件,并可以读取到listview的例子吗?
发表于 2010-6-9 00:13:11 | 显示全部楼层
给个思路:
将ABC三个图标分别转成二进制用特定符号(比如“|”)连在一起写入dat
读的时候再用StringSplit 输出数组
将数组元素生成对应的A、B、C.ico
再读入listview
发表于 2010-6-9 02:58:44 | 显示全部楼层
  这个好。。。
发表于 2010-6-9 09:01:45 | 显示全部楼层
改了后缀!!!!!!!!!!
 楼主| 发表于 2010-6-9 10:17:37 | 显示全部楼层
回复 8# rikthhpgf2005


    是啊,这个方法相当于改了后缀。
而且关键是,将多个硬用二进制的方法写入dat,没有办法读出来显示在listview中。
发表于 2010-6-9 10:39:16 | 显示全部楼层
谢谢兄弟你的回复,但我提供的文件里保存了
发表于 2010-6-9 12:19:33 | 显示全部楼层
看到楼主的这个应用,感觉有点意思,有个思路可以实现这个目的:
1、写入:读取要加入的图标文件的大小,生成dat文件的头部,头部信息可由图标文件数量、每个文件开始偏移量、文件字节数组成,然后用二进制方式逐个读取图标文件与文件头部合并写入dat中,生成dat文件。
2、提取:先读取dat文件头部,从头部得到图标文件数量、每个文件开始偏移量、文件字节数等数据,根据这些数据按偏移量和字符数提取图标并加入listview中显示。

注:所有的文件操作都要用二进制方式读写。

评分

参与人数 2金钱 +30 收起 理由
jhwl + 10 好方法
afan + 20

查看全部评分

发表于 2010-6-9 12:45:13 | 显示全部楼层
上面说的好象有点抽象,不过我看了1楼的dat文件,估计也是用文件头部的方法来定义图标的位置,只是不是太看得清他的算法,没法得到偏移量,所以不知道怎么从这个文件里提取图标。

我正在按12#的思路在写,等会写好了,再贴出来,应该可以实现。
发表于 2010-6-9 13:16:43 | 显示全部楼层
很好,继续讨论!
 楼主| 发表于 2010-6-9 13:58:30 | 显示全部楼层
回复 13# C.L


还有个问题就是 ,兄台这样的设想用函数 GUICtrlSetImage 是否能调用。
如果需要从dat将图标先生成为ico文件的话,就失去这贴讨论的意义了。
发表于 2010-6-9 14:04:12 | 显示全部楼层
完成!

运行结果如下图,分两部份,点击左边按钮会在同目录下自动用三个图标文件生成ico.dat文件,点击右边按钮会从ico.dat中提取这三个图标文件并显示在listview中

注:ico.dat的文件头部为64个字节,支持注入7个图标文件列表,每8个字节为一组,第一组为保存图标数量.



附件:(三个图标文件和一个AU3源码,无ico.dat,ico.dat由脚本生成,运行时要先生成dat文件,才能显示)

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×

评分

参与人数 2威望 +2 金钱 +52 贡献 +5 收起 理由
lynfr8 + 22 + 5
afan + 2 + 30

查看全部评分

您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-11-15 22:44 , Processed in 0.089316 second(s), 30 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表