Как я могу преобразовать из имени пути Unicode (LPWSTR) в эквивалент ASCII? Библиотека, которая вызывается, понимает только строки c.
Edit:
Хорошо, я взял предложения GetShortPathName и WideCharToMultiByte и создал этот кусок кода, я протестировал его с некоторыми папками, содержащими символы Unicode в пути, и он работал без нареканий:
wlength = GetShortPathNameW(cpy,0,0);
LPWSTR shortp = (LPWSTR)calloc(wlength,sizeof(WCHAR));
GetShortPathNameW(cpy,shortp,wlength);
clength = WideCharToMultiByte(CP_OEMCP, WC_NO_BEST_FIT_CHARS, shortp, wlength, 0, 0, 0, 0);
LPSTR cpath = (LPSTR)calloc(clength,sizeof(CHAR));
WideCharToMultiByte(CP_OEMCP, WC_NO_BEST_FIT_CHARS, shortp, wlength, cpath, clength, 0, 0);