Следующая проблема появляется только в Windows 10, а не в Windows 7.
У меня есть приложение (C ++, Visual studio 2017), для которого требуются права администратора (flag /level='requireAdministrator'
на компоновщике).Здесь я пытаюсь получить переменную среды RESOURCES:
Пример
int main() {
const char* buf;
buf = getenv("RESOURCES");
if (buf)
cout << buf << endl;
else
cout << 0 << endl;
system("pause");
return 0;
}
В Windows 7 я использовал следующий пакетный файл, не запуская его от имени администратора:
@echo off
set WORKING_DIR=%~dp0
set APP=%WORKING_DIR%\ConsoleApplicationTest.exe
set RESOURCES=%WORKING_DIR%\resources
start "" "%APP%"
В результате - в Windows 10 RESOURCES переменная в коде c ++ пуста, в Windows 7 - правильный путь к ресурсам.Является ли единственным решением в Windows 10 запуск командного файла от имени администратора всегда?