python获取文件版本信息、公司名和产品名的方法


Posted in Python onOctober 05, 2014

本文实例讲述了python获取文件版本信息、公司名和产品名的方法,分享给大家供大家参考。具体如下:

该python代码可得到文件版本信息、公司名和产品名。其他的信息都在返回的字典中。具体代码如下:

def _getCompanyNameAndProductName(self, file_path): 
    """ 
    Read all properties of the given file return them as a dictionary. 
    """ 
    propNames = ('Comments', 'InternalName', 'ProductName', 
      'CompanyName', 'LegalCopyright', 'ProductVersion', 
      'FileDescription', 'LegalTrademarks', 'PrivateBuild', 
      'FileVersion', 'OriginalFilename', 'SpecialBuild') 
   
    props = {'FixedFileInfo': None, 'StringFileInfo': None, 'FileVersion': None} 
   
    try: 
      # backslash as parm returns dictionary of numeric info corresponding to VS_FIXEDFILEINFO struc 
      fixedInfo = win32api.GetFileVersionInfo(file_path, '\\') 
      props['FixedFileInfo'] = fixedInfo 
      props['FileVersion'] = "%d.%d.%d.%d" % (fixedInfo['FileVersionMS'] / 65536, 
          fixedInfo['FileVersionMS'] % 65536, fixedInfo['FileVersionLS'] / 65536, 
          fixedInfo['FileVersionLS'] % 65536) 
   
      # \VarFileInfo\Translation returns list of available (language, codepage) 
      # pairs that can be used to retreive string info. We are using only the first pair. 
      lang, codepage = win32api.GetFileVersionInfo(file_path, '\\VarFileInfo\\Translation')[0] 
   
      # any other must be of the form \StringfileInfo\%04X%04X\parm_name, middle 
      # two are language/codepage pair returned from above 
   
      strInfo = {} 
      for propName in propNames: 
        strInfoPath = u'\\StringFileInfo\\%04X%04X\\%s' % (lang, codepage, propName) 
        ## print str_info 
        strInfo[propName] = win32api.GetFileVersionInfo(file_path, strInfoPath) 
   
      props['StringFileInfo'] = strInfo 
    except: 
      pass 
    if not props["StringFileInfo"]: 
      return (None, None) 
    else: 
      return (props["StringFileInfo"]["CompanName"], props["StringFileInfo"]["ProductName"])

希望本文所述对大家的Python程序设计有所帮助。

Python 相关文章推荐
Python多线程编程(四):使用Lock互斥锁
Apr 05 Python
Python中模块与包有相同名字的处理方法
May 05 Python
Django验证码的生成与使用示例
May 20 Python
python使用webdriver爬取微信公众号
Aug 31 Python
解决win64 Python下安装PIL出错问题(图解)
Sep 03 Python
python 使用sys.stdin和fileinput读入标准输入的方法
Oct 17 Python
python实现AES和RSA加解密的方法
Mar 28 Python
Python 判断时间是否在时间区间内的实例
May 16 Python
浅谈python 调用open()打开文件时路径出错的原因
Jun 05 Python
Python使用Opencv实现边缘检测以及轮廓检测的实现
Dec 31 Python
浅谈Python数学建模之数据导入
Jun 23 Python
Python使用永中文档转换服务
May 06 Python
python实现调用其他python脚本的方法
Oct 05 #Python
跟老齐学Python之让人欢喜让人忧的迭代
Oct 02 #Python
跟老齐学Python之关于循环的小伎俩
Oct 02 #Python
跟老齐学Python之for循环语句
Oct 02 #Python
跟老齐学Python之用while来循环
Oct 02 #Python
跟老齐学Python之复习if语句
Oct 02 #Python
python中pycurl库的用法实例
Sep 30 #Python
You might like
smarty中先strip_tags过滤html标签后truncate截取文章运用
2010/10/25 PHP
用PHP提取中英文词语以及数字的首字母的方法介绍
2013/04/23 PHP
php smarty truncate UTF8乱码问题解决办法
2014/06/13 PHP
CodeIgniter读写分离实现方法详解
2016/01/20 PHP
PHP二维数组排序简单实现方法
2016/02/14 PHP
PHP编程文件处理类SplFileObject和SplFileInfo用法实例分析
2017/07/22 PHP
php删除二维数组中的重复值方法
2018/03/12 PHP
PHP实现与java 通信的插件使用教程
2019/08/11 PHP
用js脚本控制asp.net下treeview的NodeCheck的实现代码
2010/03/02 Javascript
JQuery Ajax通过Handler访问外部XML数据的代码
2010/06/01 Javascript
多浏览器兼容性比较好的复制到剪贴板的js代码
2011/10/09 Javascript
浅析JavaScript中的事件机制
2015/06/04 Javascript
jQuery插件boxScroll实现图片轮播特效
2015/07/14 Javascript
Javascript使用function创建类的两种方法(推荐)
2016/11/19 Javascript
Javascript格式化并高亮xml字符串的方法及注意事项
2018/08/13 Javascript
VUE 全局变量的几种实现方式
2018/08/22 Javascript
vue项目打包之后背景样式丢失的解决方案
2019/01/17 Javascript
JS实现分页导航效果
2020/02/19 Javascript
vue实现登录、注册、退出、跳转等功能
2020/12/23 Vue.js
[01:14:41]DOTA2-DPC中国联赛定级赛 iG vs Magma BO3第一场 1月8日
2021/03/11 DOTA
Python读写unicode文件的方法
2015/07/10 Python
Python实现PS滤镜特效之扇形变换效果示例
2018/01/26 Python
详解Python 装饰器执行顺序迷思
2018/08/08 Python
Python 异常的捕获、异常的传递与主动抛出异常操作示例
2019/09/23 Python
Python通过kerberos安全认证操作kafka方式
2020/06/06 Python
Python定时任务框架APScheduler原理及常用代码
2020/10/05 Python
基于Python爬取搜狐证券股票过程解析
2020/11/18 Python
HTML5 Canvas 实现K线图的示例代码
2019/12/23 HTML / CSS
The Hut英国:英国领先的豪华在线百货商店
2019/07/26 全球购物
远程学习的教学用品和家庭学习资源:Really Good Stuff
2020/04/27 全球购物
正宗的澳大利亚Ugg靴子零售商:UGG Express
2020/04/19 全球购物
煤矿安全演讲稿
2014/05/09 职场文书
关于爱国的标语
2014/06/24 职场文书
酒店人事主管岗位职责
2015/04/11 职场文书
2015大学党建带团建工作总结
2015/07/23 职场文书
2016年离婚协议书范文
2016/03/18 职场文书