利用WMI重启本地计算机

Lareina_wyz 2010-10-11 02:50:53
private void button2_Click(object sender,EventArgs e)
{
//确定WMI操作的范围
//ConnectionOptions options = new ConnectionOptions();
//设定用于WMI连接操作的用户名
//options.Username = textBox2.Text;
//设定用户的口令
//options.Password = textBox3.Text;
try
{
ManagementScope Conn = new ManagementScope();
Conn.Connect();
//确定WMI操作的内容
ObjectQuery oq = new ObjectQuery("SELECT * FROM Win32_OperatingSystem");
ManagementObjectSearcher query1 = new ManagementObjectSearcher(Conn, oq);
//获取WMI操作内容
ManagementObjectCollection queryCollection1 = query1.Get();
//根据使用者选择,执行相应的远程操作
foreach (ManagementObject mo in queryCollection1)
{
string[] ss = { "" };
//执行重启操作
if (comboBox1.Text == "重新启动")
{
mo.InvokeMethod("Reboot", ss);
}
else
//执行远程关机
if (comboBox1.Text == "远程关机")
{
mo.InvokeMethod("Shutdown", ss);
}
else
MessageBox.Show("选择不正确的操作!", "错误!");
}
}
//报错
catch (Exception ee)
{
MessageBox.Show("连接" + textBox1.Text + "出错,出错信息为:" + ee.Message);
}
}

这个程序可以运行,但是当选择重新启动,点击执行按钮之后,出现错误,出错信息为:Privilege not held 这是为什么啊。麻烦会的人解答详细一些,谢谢!!!
...全文
104 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
Lareina_wyz 2010-10-13
  • 打赏
  • 举报
回复
晕。。。我当然知道好了,可是我现在需要运行这个程序,然后根据这个控制远程计算机。。。
太上老君 2010-10-13
  • 打赏
  • 举报
回复
shutdown /r /f /t 0多好呢
bingshanzhiling 2010-10-12
  • 打赏
  • 举报
回复
授权级别不够?
Lareina_wyz 2010-10-12
  • 打赏
  • 举报
回复
我想知道的是为什么授权级别不够,哪需要授权,怎么才能运行这个程序!!!!

111,129

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧