using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using System.Management; namespace remote { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { //定义连接远程计算机的一些选项 ConnectionOptions options = new ConnectionOptions(); options.Username = textBox2.Text; options.Password = textBox3.Text; ManagementScope scope = new ManagementScope( "\\\\" + textBox1.Text + "\\root\\cimv2" , options); try { //用给定管理者用户名和口令连接远程的计算机 scope.Connect(); ObjectQuery oq = new ObjectQuery( "select * from win32_OperatingSystem" ); ManagementObjectSearcher query1 = new ManagementObjectSearcher(scope, oq); ManagementObjectCollection queryCollection1 = query1.Get(); foreach (ManagementObject mo in queryCollection1) { string[] ss = { "" }; if (comboBox1.Text == "重新启动" ) { mo.InvokeMethod( "Reboot" , ss); } if (comboBox1.Text == "关闭计算机" ) { mo.InvokeMethod( "Shutdown" , ss); } if (comboBox1.Text == "注销" ) { mo.InvokeMethod( "Logoff" , ss); } } } catch (Exception er) { MessageBox.Show( "连接" + textBox1.Text + "出错,出错信息为:" + er.Message); } } } } |