У меня есть файл cmd для Windows, который использует переменную среды %CD% для определения каталога выполнения файла cmd.
Когда я запускаю файл cmd из командной строки, он работает правильно, а это означает, что переменная %CD% содержит рабочий каталог. Если я дважды щелкну левой кнопкой мыши cmd, он также сработает, как я ожидаю. Однако, если я щелкну правой кнопкой мыши файл cmd и выберу администратора runas, тогда переменная %CD% будет содержать значение «C:\Windows\system32», а не текущий каталог, в котором выполняется cmd.
Мне удалось воспроизвести проблему с помощью следующего скрипта:
echo %CD%
pause