2013-02-11 36 views
1

我希望能夠從.dll或.sys文件的詳細信息選項卡抓取文件說明字符串。我試圖用很多方法做到這一點,但無法讓他們點擊。無論如何,通過命令行執行此操作可以將其輸出到屏幕。我對使用VB可用的FileVersion.description沒有任何喜悅。從詳細信息選項卡抓取文件說明

任何方向或幫助將在這裏非常感謝。

感謝

+0

我以前有過設法使用fso.getFileVersion(argshere) 我會喜歡它的文件版本,如果有類似的東西fileDescription – 2013-02-11 13:34:25

回答

0
langs = win32api.GetFileVersionInfo(ExecutablePath, r'\VarFileInfo\Translation') 
key = r'StringFileInfo\%04x%04x\FileDescription' %(langs[0][0], langs[0][1])   
print (win32api.GetFileVersionInfo(ExecutablePath, key)) 
+0

繁榮,完成!謝謝 – 2013-02-12 13:35:12

1

作爲一個起點,它看起來像一些這方面的東西可以用win32api檢索。您可以找到文檔here,當然還可以使用python的內置幫助()。

我編輯添加一些代碼,以顯示如何檢索一些信息。我已經使用win32api以及os.stat希望這足以讓你開始。不應該太難以找到迄今爲止我已經給出的其餘部分。

import os 
import time 
import stat 
from win32api import GetFullPathName 

def get_details(file_name): 
    time_format = "%m/%d/%Y %I:%M:%S %p" 
    file_stats = os.stat(file_name) 

    return { 
     'folder_path': GetFullPathName(file_name), 
     'size': file_stats[stat.ST_SIZE], 
     'date_modified':time.strftime(time_format,time.localtime(file_stats[stat.ST_MTIME])), 
     'access_time': time.strftime(time_format,time.localtime(file_stats[stat.ST_ATIME])), 
    } 

print get_details("myfilename") 
+0

這是好東西。我也需要實際的文件描述,我不相信可以通過os.stat獲得。 – 2013-02-11 14:50:22

+0

不確定。我自己並沒有使用它,但一些快速研究似乎表明,這可能做你想要的:[WMI](http://pypi.python.org/pypi/WMI/) – 2013-02-11 16:23:24