Скрипт для уничтожения удаленного сеанса и открытия программы работает, только если пользователь является администратором - PullRequest
0 голосов
/ 24 апреля 2020

У меня есть этот код, который успешно убивает мой удаленный сеанс и открывает Sketchup. Когда я снова удаленно, Sketchup открыт и доступен для использования. Однако это работает только в том случае, если пользователь является администратором. Можно ли изменить этот скрипт, чтобы он работал для обычных пользователей? Даже если бы мне нужно было ввести учетные данные локального администратора, я бы с этим согласился.

for / f "skip = 1 tokens = 3" %% s в ('query user% USERNAME%') do ( Тайм-аут% windir% \ System32 \ tscon.exe %% s / dest: console) / t 15 кд "C: \ Program Files \ SketchUp \ SketchUp 2019" sketchup.exe

1 Ответ

0 голосов
/ 26 апреля 2020

Я не думаю, что пользователь должен быть администратором. Вы должны быть в состоянии сохранить сценарий в файле .bat и щелкните правой кнопкой мыши Запуск от имени администратора. Разве это не работает?

Важным моментом здесь является то, что SketchUp также будет работать с правами администратора, и вы не захотите, чтобы какая-либо программа работала с повышенными привилегиями без необходимости. Я бы изменил скрипт следующим образом:

runas / trustlevel: 0x20000 "C: \ Program Files \ SketchUp \ SketchUp 2019 \ SketchUp.exe"

Редактировать: вот вариант варианта скрипт, который работает для меня под обычным пользователем:

for /F "tokens=1,2,3,4,5" %%A in ('"query session | find "Active""') DO (tscon %%C /dest:console)
runas /trustlevel:0x20000 "C:\Program Files\SketchUp\SketchUp 2020\SketchUp.exe"

(Вы должны запустить скрипт от имени администратора)

...