| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1771 人关注过本帖, 2 人收藏
标题:VFP“结构类型”应用,PE资源表---图标
取消只看楼主 加入收藏
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:451
帖 子:10607
专家分:43186
注 册:2014-5-20
结帖率:100%
收藏(2)
已结贴  问题点数:20 回复次数:1 
VFP“结构类型”应用,PE资源表---图标
VFP“结构类型”应用,PE资源表---图标

相关帖:https://bbs.bccn.net/viewthread.php?tid=510323&extra=&page=1

提取windows图标的问题,当时用WinAPI搜索了一下,发现搜出来的图标并不
全面,用GDI+导出来好象大都也是32*32或16*16的格式,头脑有点发麻了,是
不是没用对劲?

既然图标是放在PE文件里的,那就从PE文件着手,直接从PE文件中提取出来,果然
真有不少,同一款图标从256*256到16*16也有10个规格的。

用VFP来解释PE文件也不容易,尤其图标是存放在PE资源表的。PE资源表的数据结构
算是比较复杂,使用了不少结构类型数据。通常VFP面对结构类型数据比较难读懂难
理解。

想起较早前写过VFP“结构类型”的东东,当时只是纸上谈兵,没有实战过。这次就
用他上阵试试刀。主要用他来达到两个目的:

    1、实现数据结构链表,用独立模块来处理图标数据,避免用DBF,有待以后转业。
    2、读写内存结构块数据,方便获取PE各类结构块数据。

代码有点杂就不贴了,打包一起有兴趣的可以下来看看,有问题可以共同探讨。
代码只有与PE_ICON相关部份,主程序项目在:

...\PE_File\PE_Resource\PE_Icon\PE_Icon.pjx

测试最好先保留这个目录结构,测试环境:Win10 + VFP9

代码主要实现:浏览PE资源表的图标信息;提取PE资源表的图标数据,VFP直接
引用这些数据应用到image,无需使用ICO文件。

PE_File.rar (686.22 KB)


图片附件: 游客没有浏览图片的权限,请 登录注册


搜索更多相关主题的帖子: 资源 数据 VFP 图标 结构 
2022-11-02 22:05
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:451
帖 子:10607
专家分:43186
注 册:2014-5-20
收藏
得分:0 
以下是引用sam_jiang在2022-11-3 11:43:20的发言:

管他用不用得着,先下了再说。

这个应用目的只有一个:直接引用系统图标资源,也就是说程序使用的图标是从系统资源中获取,顶多也只能说表现得有点与windows近亲吧了,喜欢玩个性的应该就不感兴趣。

但从编程的角度来看,所用手法也许超出VFP的范围,有些概念VFP是没有的,如指针、结构、链表。

    PE(Portable Executable)是Windows操作系统中的核心文件格式,PE文件格式相对开放引起了广大计算机编程人员的兴趣。通过对PE格式的理解,程序员不仅可以了解操作系统加载可执行文件的过程,还可以学习到操作系统对进程和内存进行管理的相关知识。同时,通过一些技术手段,对PE文件实施变形或打补丁,还可以实现各种不同的应用,如汉化、加密解密、计算机安全、PE病毒;引用PE文件中的资源数据,如光标、位图、图标等;通过导入表了解程序使用了那些API,通过导出表了解程序给用户提供了那些API;等等。了解和掌握PE文件格式,通过对PE文件进行编程,解决各种与PE文件有关的问题。

有兴趣的话可以深入探讨一下。
2022-11-03 12:07
快速回复:VFP“结构类型”应用,PE资源表---图标
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.023403 second(s), 10 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved