访问Python / wxPython中的文件元数据

时间:2011-06-22 00:29:53

标签: python windows filesystems icons wxpython

我想编写一个实现wx.FileDropTarget的Python / wxPython应用程序。这部分很容易。我还想显示文件图标,因为它在应用程序窗口上拖动,然后在应用程序窗口中显示带有文件图标的代理(以及其他元数据,可能是大小)。

我想在Windows 7上实现这一点。但我感兴趣的是能够在OS X和Linux上实现这一功能。

我通过Python v2.7.1文档搜索和搜索 - 但无济于事。我对Windows的方式有点新,所以如果有办法来判断与文件相关的BMP或ICO文件 - 那么我可以走那条路......

任何示例代码总是受到赞赏。

2 个答案:

答案 0 :(得分:1)

我认为不仅有一种便携式方法可以实现这一目标...在Windows平台上,文件类型关联的默认图标存储在系统注册表中(图标位于exe资源中的可执行文件除外)和Linux平台上这取决于桌面环境,每个人都有自己的标准......所以我认为没有“通用”的方式来做到这一点。

答案 1 :(得分:1)

此示例应该让您开始在Windows中查找文件图标:

from _winreg import *

extension = '.html'

reg = OpenKey(HKEY_CLASSES_ROOT, extension)
(value, vtype) = QueryValueEx(reg, None)
print "file type is:", value

reg = OpenKey(HKEY_CLASSES_ROOT, value + '\DefaultIcon')
(value, vtype) = QueryValueEx(reg, None)
print value, vtype

%ProgramFiles%\ Internet Explorer \ iexplore.exe,-17 2

......至少那就是我的系统。