Показать полную графическую версию : [решено] UAC WMI и powershell
Есть скрипт
$Computer = "123"
$Command = "abc.bat"
([wmiclass]"\\$Computer\root\cimv2:Win32_Process").create($Command)
Проблема в том что он срабатывает только на тех компах где не установлен UAC, там где он установлен скрипт не работает. Как заставить не обращать внимания на UAC?
Компьютеры в домене или нет? И точно ли не блокирует файерволл?
Если в домене, то UAC не действует на доменные учетные записи, но действует на локальные учетные записи, которые состоят в группе Администраторы.
Можно отключить фильтрацию - HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\system\LocalAccountTokenFilter Policy установив значение в 0.
Или воспользоваться сторонним решением - psexec (http://technet.microsoft.com/en-us/sysinternals/bb897553.aspx):
psexec \\123 -s -h cmd /c abc.bat
пробовал вставить psexec пишет psexec не распознано как имя командлета
Это отдельная утилита и требуется скачать, psexec - http://technet.microsoft.com/en-us/sysinternals/bb897553.aspx
Она у меня есть в system32. Как запустить ее через powershell чтобы аргументы были переменными? Вообще задача стоит запустить bat, который лежит в сети, на компьютерах в определенном контейнере AD
& "C:\dfsfsdf\psexec.exe" "\\$Computer" -s -h "cmd /c $Command"
Спасибо! Все заработало как надо.
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.