一、获取*.exe程序的文件版本
1、方法一:
from win32com.client import Dispatch
def get_version_via_com(file_name):
parser = Dispatch("Scripting.FileSystemObject")
version = parser.GetFileVersion(file_name)
return version
if __name__ == "__main__":
file_name = r"×.exe"
print(get_version_via_com(file_name))
2、方法二:
import os
import win32api
def getFileVersion(file_name):
info = win32api.GetFileVersionInfo(file_name, os.sep)
ms = info['FileVersionMS']
ls = info['FileVersionLS']
version = '%d.%d.%d.%03d' % (win32api.HIWORD(ms), win32api.LOWORD(ms), win32api.HIWORD(ls), win32api.LOWORD(ls))
return version
if __name__ == "__main__":
file_name = r"×.exe"
print(getFileVersion(file_name))
二、获取.exe程序的产品版本号
import os
import win32api
def getProductVersion(file_name):
info = win32api.GetFileVersionInfo(file_name, os.sep)
ms = info['ProductVersionMS']
ls = info['ProductVersionLS']
version = '%d.%d.%d.%03d' % (win32api.HIWORD(ms), win32api.LOWORD(ms), win32api.HIWORD(ls), win32api.LOWORD(ls))
return version
if __name__ == "__main__":
file_name = r"×.exe"
print(getProductVersion(file_name))