Dzwebs.Net

撰写电脑技术杂文十余年

C#Winform远程重启、关闭计算机的代码

Admin | 2010-6-29 19:38:25 | 被阅次数 | 9122

温馨提示!

如果未能解决您的问题,请点击搜索;登陆可复制文章,点击登陆

  如何使用C#语句编写重启、关闭局域网计算机的代码?这得注意几个问题,希望大家能够真心阅读此文。经过本站严格测试,如下代码正确无误。

  编程环境为:VS2005

  一、前提条件

  首先要将Management组件引用到项目文件中。

  添加引用方法为:执行菜单“项目”→“添加引用”。

  在弹出的对话框中,选择.net选项卡,然后,在组件名称列表中找到“System.Management”并选择,然后点击“确定”按钮,这样,Management组件就添加到项目文件了。最后,再using中,再次引用Management组件。因此,using引用代码如下:

  using System;
  using System.Collections.Generic;
  using System.ComponentModel;
  using System.Data;
  using System.Drawing;
  using System.Text;
  using System.Windows.Forms;
  using System.Net.Sockets;
  using System.Net;
  using System.Runtime.InteropServices;
  using System.IO;
  using System.Management;//这一项很重要哦

  二、关闭、重启局域网计算机代码

  ConnectionOptions op = new ConnectionOptions();
  op.Username = "administrator";//或者你的帐号(注意要有管理员的权限)
  op.Password = "登陆密码"; //你的密码
  ManagementScope scope = new ManagementScope("\\\\" + 这里填写计算机名称或计算机IP地址 + "\\root\\cimv2", op);
  try
            {
                scope.Connect();
                System.Management.ObjectQuery oq = new System.Management.ObjectQuery("SELECT * FROM Win32_OperatingSystem");
                ManagementObjectSearcher query1 = new ManagementObjectSearcher(scope, oq);
                //得到WMI控制 
                ManagementObjectCollection queryCollection1 = query1.Get();
                foreach (ManagementObject mobj in queryCollection1)
                {
                    string[] str = { "" };
                    mobj.InvokeMethod("ShutDown", str);
                }
  }
  catch
  {

  }

  以上代码是关闭局域网计算机的代码。注意哦,需要修改的地方只有三处,那就是登陆局域网计算机的用户名、密码和计算机名称或者是计算机的IP地址。

  只需要将如上代码的 ShutDown 改为 Reboot 就成为重新启动局域网的代码了。

  上述代码,均使用到WMI涉及的技术。

  当然,如果您想通过C#编写唤醒局域网计算机的功能,也是可以的。今后,本站再添加与唤醒功能相关的技术文章,敬请期待。


该杂文来自: 网络知识杂文

上一篇:宽带连接连网速度慢的原因及解决办法

下一篇:使用c#代码判断局域网计算机是否开机、网络连接是

网站备案号:

网站备案号:滇ICP备11001339号-7

版权属性:

Copyright 2007-2021-forever Inc. all Rights Reserved.

联系方式:

Email:dzwebs@126.com QQ:83539231 访问统计