|
Программирование >> Автоматически обновляемые приложения
private void butBoard Click(object sender, EventArgs e) { ConnectionOptions options = new ConnectionOptions(); options .Username = (3 gamma\admin ; options.Password = password ; ManagementScope scope = new ManagementScope( \\\\smena01\\root\\cimv2 , options); scope.Connect(); Запрашиваем информацию о материнской плате ObjectQuery query = new ObjectQuery( SELECT * FROM Win32 BaseBoard ); ManagementObjectSearcher searcher = new ManagementObjectSearcher(scope, query); ManagementObjectCollection queryCollection = searcher.Get(); foreach (ManagementObject mo in queryCollection) string nl = Environment.NewLine; Выводим информацию с удаленного компьютера textBoxl.Text = Manufacturer : + mo[ Manufacturer ] + nl; textBoxl.Text += Name: + mo[ Name ] + nl; Вывод списка общих ресурсов Класс win32 share позволяет получить информацию об общих ресурсах системы, которые могут совместно использоваться всеми участниками сети (листинг 12.13). К подобным ресурсам относятся каталоги, устройства, принтеры, съемные носители и др. Листинг 12.13. Получение списка общих ресурсов private void butShare Click(object sender, EventArgs e) { Соединяемся с удаленной машиной ConnectionOptions options = new ConnectionOptions(); [Листинг 12.12. Получение свойств материнской платы: - Информация о логических дисках с помощью класса win32 LogicaiDisk МОЖНО узнать информацию о локальных дисках на компьютере (листинг 12.14). } - ;rwT# !r ....... ........................?....................................................................................................................................... ЛиоИ1Г 12Л4. Полу{1ение информации о логических дисках private void butLogDisk Click(object sender, EventArgs e) { Соединяемся с удаленной машиной ConnectionOptions options = new ConnectionOptions (); options .Username = (3 gamma\admin ; options.Password = pass ; ManagementScope scope = new ManagementScope( \\\\support\\root\\cimv2 , options); scope.Connect(); options.Username = @ gamma \admin ; options.Password = password ; ManagementScope scope = new ManagementScope( \\\\mymachine\\root\\cimv2 , options); scope.Connect() ; Делаем запрос к удаленной машине System.Management.ObjectQuery oq = new System.Management.ObjectQuery( SELECT * FROM Win32 Share ); ManagementObjectSearcher find = new ManagementObjectSearcher(scope, oq); string nl = Environment.NewLine; foreach (ManagementObject mo in find.GetO) { textBoxl.Text=( Список общих ресурсов = + mo[ Name ]) + nl; Перезагрузка компьютера с помощью WMI можно не только получать интересующую нас информацию, но и выполнять различные действия. Например, мы можем заставить удаленный компьютер перезагрузиться при помощи команды Reboot класса win32 OperatingSystem, применение которой показано в листинге 12.15. Листинг 12.15. Перезагрузка удаленного компьютера private void butReboot Click(object sender, EventArgs e) { Соединяемся с удаленным компьютером ConnectionOptions options = new ConnectionOptions(); options .Username = (a domen\admin ; options.Password = password ; ManagementScope scope = new ManagementScope( \\\\machine\\root\\cimv2 , options) scope.Connect(); Делаем запрос к удаленной машине System.Management.ObjectQuery oq = new System.Management.ObjectQuery( SELECT * FROM Win32 OperatingSystem ); ManagementObjectSearcher queryl = new ManagementObjectSearcher(scope, oq); ManagementObjectCollection queryCollectionl = queryl.Get(); 11 Делаем запрос к удаленной машине string cmiPath = @ \root\cimv2:Win32 LogicalDisk.DeviceID=C: ; ManagementObject mo = new ManagementObject(cmiPath); Вьгоодим информацию string nl = Environment.NewLine; textBoxl.Text = Описание: + mo [ Description ] + nl; textBoxl.Text+= Фaйлoвaя система: + mo[ FileSystem ] + nl; textBoxl.Text+= Cвoбoднo: + mo[ FreeSpace ] + nl; textBoxl.Text += Размер диска: + mo[ Size ] + nl;
|
© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки. |