Когда я использую std::filesystem::create_directory()
файловой системы C ++ или CreateDirectory()
в общей папке виртуальной машины не удается создать каталог, когда я запускаю приложение от имени администратора. Тем не менее, когда я запускаю его в обычном режиме для учетной записи, а не от имени администратора, кажется, он работает нормально.
Я использую VirtualBox с Windows 10 в качестве хост-системы, а также Windows 10 в виртуальной машине. Общая папка автоматически монтируется и отображается на виртуальной машине как диск E: \. Возвращаемая ошибка говорит: «Путь не найден» и код ошибки, заданный CreateDirectory()
номер 3 в этом списке: https://docs.microsoft.com/en-us/windows/desktop/debug/system-error-codes—0-499-. Я использовал несколько способов, чтобы вернуть эту ошибку, для std::filesystem::create_directory()
Я использовал его второй аргумент и с CreateDirectory()
Я использовал GetLastError()
,
Есть ли возможность запускать эти функции без прав администратора, если само приложение работает с правами администратора?
Или есть другое решение?
Пример кода с использованием файловой системы, которая выдает ошибку:
#include <filesystem>
int main(int argc, char* argv[])
{
std::filesystem::path targetPath = "E:\\TestPath";
std::filesystem::create_directory(targetPath);
return 0;
}
Задача ещё не решена.
Других решений пока нет …