Как изменить поведение std::filesystem::temp_directory_path(), возвращая путь с псевдонимом 8.3 в Windows

С помощью temp_directory_path() из std::experimental::filesystem в Visual Studio 2015:

#include <iostream>
#include <experimental/filesystem>
namespace fs = std::experimental::filesystem;
int main() {
    std::cout << fs::temp_directory_path().generic_string() << std::endl;
    std::cout << fs::temp_directory_path() << std::endl;
}

Выход:

C:/Users/ADMINI~1/AppData/Local/Temp/
C:\Users\ADMINI~1\AppData\Local\Temp\

Можно ли получить полный путь C:/Users/Administrator/AppData/Local/Temp/ вместо 8.3 псевдоним?

Используя Visual C++, fs::temp_directory_path() звонки например _Temp_get(wchar_t (&)[_MAX_FILESYS_NAME]) в C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\filesystem, Однако источник этой функции, по-видимому, недоступен.

0 ответов

Другие вопросы по тегам