Я пытаюсь получить текущую временную папку с помощью Boost:
boost::system::error_code error;
auto tmp_path = boost::filesystem::temp_directory_path(error);
if (boost::system::errc::success != error.value())
{
std::cout << error.message() << std::endl;
}
При исследовании значения tmp_path во время сеанса отладки Visual Studio 2013 кажется, что значение tmp_path неверно — VS отображает {m_pathname=<Bad Ptr>}
.
Следующий код также завершается ошибкой с исключением "слишком длинная строка", что может быть связано с проблемой:
std::string tmp_file_str("test");
boost::filesystem::path tmp_file(tmp_file_str);
Boost был перекомпилирован локально с помощью набора инструментов msvc:
cd boost-folder
bootstrap
.\b2 toolset=msvc-12.0 variant=release link=static,shared threading=multi --with-chrono --with-date_time --with-filesystem --with-system --with-thread --with-test
Окружающая обстановка:
- Windows 8.1 Версия 6.3.9600 Сборка 9600 x64
- Visual Studio 2013, версия 12.0.30110.00, обновление 1