python实现计算资源图标crc值的方法
作者:shichen2014 发布时间:2022-07-02 17:57:56
标签:python,资源,图标
本文实例讲述了python实现计算资源图标crc值的方法,分享给大家供大家参考。具体方法如下:
实现该功能的关键在于解析资源信息,找到icon的数据,然后计算这些数据的crc
具体实现代码如下:
def _get_iconcrc(self, file_path):
"""
Generates the crc32 hash of the icon of the file.
@return: str, the str value of the file's icon
"""
iconData = ""
mype = pefile.PE(file_path)
if hasattr(mype, "DIRECTORY_ENTRY_RESOURCE"):
resIcons = filter(lambda x: x.id==pefile.RESOURCE_TYPE['RT_ICON'], mype.DIRECTORY_ENTRY_RESOURCE.entries)
if len(resIcons)>0:
resIcons = resIcons[0]
if hasattr(resIcons, "directory"):
for resId in resIcons.directory.entries:
if hasattr(resId, 'directory'):
for resLang in resId.directory.entries:
iconData += mype.get_data(resLang.data.struct.OffsetToData, resLang.data.struct.Size)
if not iconData:
print "not iconData"
return None
else:
return self._crc32(iconData)
希望本文所述对大家的Python程序设计有所帮助。


猜你喜欢
- 当设计一个产品,其中很多地方要把日期类型保存到数据库中,如果产品有兼容不同数据库产品的需求,那么,应当怎样设计呢?当然,首先想到的是,使用数
- 结合工作中的内容和大家分享一次Left Jon优化的过程,希望能给同学们新的思路。【功能背景】 我们需要
- MySQL好像从5.0.2版本就开始支持触发器的功能了,本次博客就来介绍一下触发器,首先还是谈下概念性的东西吧:什么是触发器触发器是与表有关
- 马上就要过节了,想把自己的项目搞得酷炫一些,对整个网站的按钮添加图标、飘花效果、首屏大图展示、顶部导航背景图,于是就写了这一遍文字,如有兴趣
- 之前在学Django时,发现它的模型层非常好用,把对数据库的操作映射成对类、对象的操作,避免了我们直接写在Web项目中SQL语句,当时想,如
- 假如Excel中的数据如下:数据库建表如下:其中Id为自增字段:代码:using System;using System.Collectio
- getattr函数(1)使用 getattr 函数,可以得到一个直到运行时才知道名称的函数的引用。>>> li = [&q
- python语句与语法1.python简单语句的基本介绍>>> while True: #简单的while循环... re
- 目录前言算法原理目标函数算法流程 Python实现总结前言K-Means 是一种非常简单的聚类算法(聚类算法都属于无监督学习)。给
- Python编程:函数函数是带名字的代码块,用于完成具体的工作。要执行函数定义的特定任务,可调用该函数。需要在程序中多次执行同一项任务时,你
- DATE_ADD(date,INTERVAL expr type) DATE_SUB(date,INTERVAL expr type)这些函
- 今天有个服务器速度变得非常慢,用工具一看,IIS堵塞进程达到100多个,肯定有问题,下面进入排查(聚友习惯把过程写出来,如果不需要过程,请直
- static function convert($size) { &
- Python2默认是不支持中文的,一般我们在程序的开头加上#-*-coding:utf-8-*-来解决这个问题,但是在我用open()方法打
- mysqladmin是MySQL官方提供的shell命令行工具,它的参数都需要在shell
- 变量的种类在T-SQL中,变量按生存范围可以分为全局变量(Global Variable)和局部变量(Local Variable)全局变量
- Python等工具确实是不错的工具,但是有时候不管是基础的Python还是Python的软件包都让我觉得对中文不是很亲近。时不时地遇到一点问
- 似乎讨论分页的人很少,难道大家都沉迷于limit m,n?在有索引的情况下,limit m,n速度足够,可是在复杂条件搜索时,where s
- 简单的解析例子:首先还是从官方文档中的例子:package mainimport (?? ?"fmt"?? ?"
- 任务识别用相机拍下来的答题卡,并判断最终得分(假设正确答案是B, E, A, D, B)主要步骤轮廓识别——答题卡边缘识别透视变换——提取答