Доступ к метаданным файла в Python / wxPython - PullRequest
1 голос
/ 22 июня 2011

Я хотел бы написать приложение Python / wxPython, которое реализует wx.FileDropTarget. Эта часть проста. Я также хотел бы показать значок файла при его перетаскивании по окну приложения, а затем отобразить прокси со значком файла (и другими метаданными, например, размером) в окне приложения.

Я хотел бы реализовать это в Windows 7. Но я заинтересован в том, чтобы сделать эту работу также и в OS X и Linux.

Я гуглил и искал документацию по Python v2.7.1 - но безрезультатно. Я несколько новичок в Windows, поэтому, если есть способ предугадать файл BMP или ICO, связанный с файлом - тогда я в порядке с этим путем ...

Любой пример кода всегда приветствуется.

Ответы [ 2 ]

1 голос
/ 22 июня 2011

Этот пример поможет вам начать поиск значков файлов в 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

... по крайней мере, так оно и есть в моей системе.

1 голос
/ 22 июня 2011

Я думаю, что не существует только одного портативного способа сделать это ... на платформах Windows значки по умолчанию для ассоциаций типов файлов хранятся в системном реестре (за исключением исполняемых файлов, где значок находится в ресурсах exe) и на платформах Linuxэто зависит от среды рабочего стола, у каждого свои стандарты ... поэтому я не думаю, что есть "универсальный" способ сделать это.

...