Shell Folders
От: Аноним  
Дата: 15.08.07 10:58
Оценка:
Не работает корректно функция
HRESULT SHGetFolderPath(HWND hwndOwner, int nFolder, HANDLE hToken, DWORD dwFlags, LPTSTR pszPath)
после переименования стандартных папок (dwFlags=SHGFP_TYPE_CURRENT при этом)

Например:
Меняем имя C:\Users\Yura\Videos на С:\Users\Yura\Videos2. (текущая ОС ->Win Vista но в XP тоже не работает)

Имеем

TCHAR szFolderPath[MAX_PATH];

if(SUCCEEDED(SHGetFolderPath(NULL, CSIDL_MYVIDEO, NULL, SHGFP_TYPE_DEFAULT, szFolderPath)))
{
//этот код не выполняеться
}

Функция не возвращает S_FALSE, E_FAIL, E_INVALIDARG, S_OK, szFolderPath остаеться без изменений.
Кто подскажет альтернативу. Но мне не подойдет простой перебор папок, так как надо изьять именно папку Videos (или My Video в XP) а название может быть любое (после того как ее переименовали!!!). Или может кто знает как можна розличить эту папку среди других (Documents, Pictures,…)?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.