Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Python: Общие вопросы > Как получить путь к CommonApplicationData


Автор: KuMa1104 10.12.2010, 14:35
Здравствуйте.

Как получить путь к папке CommonApplicationData ?
Например в Windows 7 у меня это C:\ProgramData  в XP это C:\Documents and Settings\All Users\Application Data 

Автор: KuMa1104 16.12.2010, 12:33
Хм. 
Раз никто не знает. 
Видимо эта "очень сложная" задача питону не под силу.

Очень жаль. Пока делаю так.
Код

os.homedir = os.path.expanduser('~')
 

Но это немного не то. C:\Users\KuMa1104 на windows 7

Хотелось бы именно в CommonApplicationData.



Автор: senkler 18.12.2010, 22:37
Цитата(KuMa1104 @ 16.12.2010,  12:33)
Хм. 
Хотелось бы именно в CommonApplicationData.

Код

import ctypes
from ctypes import wintypes, windll

CSIDL_COMMON_APPDATA = 35

_SHGetFolderPath = windll.shell32.SHGetFolderPathW
_SHGetFolderPath.argtypes = [wintypes.HWND,
                            ctypes.c_int,
                            wintypes.HANDLE,
                            wintypes.DWORD, wintypes.LPCWSTR]


path_buf = wintypes.create_unicode_buffer(wintypes.MAX_PATH)
result = _SHGetFolderPath(0, CSIDL_COMMON_APPDATA, 0, 0, path_buf)
print path_buf.value

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)