Удаленное удаление программ при помощи WMI
Здравствуйте, уважаемые читатели! Некоторые из вас возможно задавались вопросом как удалить программу на удаленном компьютере. Рядовому пользователю это скорей всего не нужно, а системному администратору какой-нибудь локальной сети это может понадобиться.
Для удаления и установки ПО на удаленных компьютерах существует множество различных решений и программных средств. В этой статье мы рассмотрим решение данного вопроса на основе встроенных средств windows.
Удалять программы на удаленных машинах нам поможет Windows Management Instrumentation или проще говоря WMI. В переводе на русский это инструментарий управления Windows.
Как запустить wmi
Запуск wmi выполняется из командной строки. Открыть командную строку можно из "Пуск -> Все программы -> Стандартные -> Командная строка"
, либо просто нажимаете клавиши "WIN + R"
, откроется окно "Выполнить"
в котором в поле "открыть"
набираете "cmd"
и нажимаете "OK"
.
В открывшемся окне командной строки набираем команду wmic и нажимаем "Enter"
:
Таким образом мы запустили консольную утилиту для взаимодействия со структурой WMI на локальном или удаленном компьютере. Теперь с помощью язык запросов WMI Query Language (WQL) можно выполнять различные команды WMI.
Для примера получим весь список установленного ПО на удаленном компьютере. Для этого выполняем следующий запрос:
/node:{имя компьютера} product get name
Где вместо {имя компьютера}
подставляем имя удаленной и локальной машины, с которой необходимо получить список установленных программ. Имя компьютера лучше заключить в кавычки. Жмем "Enter"
, ждем некоторое время на сбор информации и получаем примерно следующую картину:
Как удалить программу с помощью WMI?
Удалить программу можно с помощью следующего запроса:
/node:{имя компьютера} product where name={название программы} call uninstall
Где вместо {имя компьютера} вставляем имя компьютера с которого будет удаляться программа, а вместо {название программы} имя удаляемой программы как в полученном списке ПО.
Например, нам необходимо удалить «Microsoft Office Professional Plus 2010». Тогда запрос будет выглядеть примерно так:
/node:{home2} product where name="Microsoft Office Professional Plus 2010" call uninstall
Нажимаем «Enter» и на запрос предложения удаления программы отвечаем Y:
wmic:root\cli>/node:"tep-ws000010" product where name="Microsoft Office Professional Plus 2010" call uninstall
Execute (\\TEP-WS000010\ROOT\CIMV2:Win32_Product.IdentifyingNumber="{90140000-0011—0000-1000-0000000FF1CE}",Name="Microsoft Office Professional Plus 2010",Version="14.0.4763.1000") ->Uninstall () (Y/N/?)? Y
После попытки удаления будет выведено сообщение о результатах. В случае успешного удаления сообщение будет такого вида:
Method execution successful.
Out Parameters:
instance of __PARAMETERS
{
ReturnValue = 0;
};
На этом все! До встречи в следующих выпусках!
Похожие записи
Оставить комментарий
Спасибо за подробную и понятную инструкцию
Работает! А теперь плиз, если не сложно, выложите инструкции, как устанавливать программы!
ОК, будет время напишу инструкции
команда не работает так как ожидалось, т.е. удаляются только исполняемые файлы, сама программа остаётся. Команда некорректно работает с именами компьютеров такими как Comp-Sapr2. Выдаёт вот что -
wmic:root\cli>/node:Comp-Sapr2 product get name
Comp — Invalid node <discarded>.
Invalid Global switch.
wmic:root\cli>
С именами компьютеров: Ivanov, CompSapr1 работает нормально, но как я писал, команда удаляет только исполняемые файлы.
Comp-Sapr2 нужно взять в кавычки:
wmic:root\cli>/node:"Comp-Sapr2" product get name
насчет почему удаляются только исполняемые файлы не знаю... у меня вроде все нормально, программа исчезает из панели «Программы и компоненты», иногда остаются различные файлы настроек, но они и при обычном удалении остаются
Это не файлы, создаваемые на диске при установке программы, они созданы в процессе последующей работы уже установленной программы. И это, очевидно, к теме не относится. Могу я попросить вас следовать вашей же безотказной просьбе вести обсуждение только по теме этой записи?
При исполнении, допустим Lync 2010, возвращает ноль, а для офиса 2010 возвращает 1603
в чём секрет?
Спасибо! Очень полезная статья! 🙂
Разрешите Вам представить программу которая используя WMI удаляет и устанавливает программы с компьютеров в сети, Management Remote PC. И написание команд в консоли сразу отпадает!!!
Показывает не все программы, видимые в «Панель управления\Все элементы панели управления\Программы и компоненты» (windows 10), например, у меня не показывает «7-Zip 19.00» и много чего ещё.
Здравствуйте, не появилась ли инструкция по установке программ на удалённом компьютере через WMI?