IT→ Оснастка «Удаленное управление компьютером»

Май 12, 2011

Очень часто использую оснастку «Управление компьютером» (compmgmt.msc) для управления удаленным компьютером. С помощью нее можно запускать/останавливать сервисы, закрывать активные сессии, расшаривать папки, добавлять пользователей в локальные группы, просматривать диспетчер устройств и все это удаленно!


Для того, чтобы запустить её для удаленного управления, необходимо открыть саму оснастку compmgmt.msc, выбрать «Действия -> Подключиться к другому компьютеру…» и ввести адрес компьютера — кажется что не сложно. Но когда приходиться выполнять эти действия по 20 раз в день, начинаешь задумываться о том как оптимизировать этот процесс, чем я и занялся.


Открыв файл compmgmt.msc в блокноте, можно увидеть XML структуру, которая описывает параметры оснастки. Ничего похожего на адрес компьютера в нем не обнаружилось и поэтому было решено сравнить через Total Commander два файла оснастки — стандартной compmgmt.msc и ранее сохраненной compmgmt.msc, настроенной на удаленный компьютер.

Оснастку можно сохранить, если сначала запустить mmc.exe, после чего через нее открыть файл compmgmt.msc.

Самое существенное изменение в файлах было на 498 строчке, где между тэгом <Binary> и </Binary> находился набор символов, похожий на Base64. Раскодировав эту строку был найден адрес компьютера с другим лишним мусором, который был постоянен и не особо мешал. Открыв BDS2006, быстро накидал код программы, запускающий оснастку для удаленного компьютера, адрес которого можно передать аргументом. Немного пришлось помучатся с кодировкой, так как текст адреса должен быть в UTF-16, а Delphi плохо знаком с ней. Также попутно нашел для себя добротный модуль кодирования/декодирования Base64.

UPD
А ларчик просто открывался:
mmc.exe compmgmt.msc /computer=\\192.168.0.1


Исходники на mscexec.zip

Похожие статьи:

  1. Поиск компьютера по имени пользователя

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *