本文實例講述了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程序設計有所幫助。
新聞熱點
疑難解答