Я могу использовать проводник контекстного меню "Открыть окно PowerShell здесь", чтобы открыть PowerShell в текущей папке. Тем не менее, это приглашение запускается как пользователь с ограниченными правами. Как я могу поднять это приглашение, чтобы оно работало от имени администратора, сохраняя текущий каталог?

1 ответ1

4

К сожалению, Windows не позволяет заменить основной токен после запуска процесса. Для целей этого ответа это означает, что мы не можем изменить пользователя или статус повышения, при котором выполняется существующее приглашение PowerShell.

Чтобы запросить повышение прав нового процесса PowerShell, который запускается в текущем каталоге, вы можете использовать эту команду:

Start-Process powershell -Verb runas -ArgumentList "-NoExit -c cd '$pwd'"

-Verb runas запрашивает повышение прав , а -ArgumentList предоставляет командную строку новому процессу. -c дает команду на выполнение (строковая интерполяция превращает $pwd в текущий каталог текущего процесса). -NoExit указывает новому процессу не заканчиваться после того, как он завершает свои команды запуска.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .