FAQ:WinAPI VCPP:получить короткое и длинное имя файла
Материал из Весельчак У
Как получить короткое и длинное имя файла?
Можно использовать функции API
// получить короткий путь GetShortPathName( LPCSTR lpszLongPath, LPSTR lpszShortPath, DWORD cchBuffer);
и
// получить полный путь GetLongPathName( LPCSTR lpszShortPath, LPSTR lpszLongPath, DWORD cchBuffer);
Например имеется путь к файлу:
D:\program files\Microsoft Office\OFFICE11\winword.exe
Функция GetShortPathName() поможет привести его к виду:
d:\PROGRA~1\MICROS~2\OFFICE11\WINWORD.EXE
А функция GetLongPathName() - наоборот.
Максимальная длина пути файла равна MAX_PATH (260) символам