zoukankan      html  css  js  c++  java
  • 远程与本地的磁盘使用情况与进程监控

    本地磁盘:

    //long totalSize = new long();
    //str_HardDiskName = str_HardDiskName + ":\";
    //System.IO.DriveInfo[] drives = System.IO.DriveInfo.GetDrives();
    //foreach (System.IO.DriveInfo drive in drives)
    //{
    // if (drive.Name == str_HardDiskName)
    // {
    // totalSize = drive.TotalSize / (1024 * 1024 * 1024);
    // }
    //}
    //return totalSize;

    远程监控磁盘使用情况:
    long mb = 1048576;
    //1024x1024
    //设定生成的WMI所需的所有设置
    System.Management.ConnectionOptions Conn = new ConnectionOptions();
    //设定用于WMI连接操作的用户名
    Conn.Username = "Administrator";
    //设定用户的口令
    Conn.Password = "ohmydear";
    //设定用于执行WMI操作的范围
    System.Management.ManagementScope Ms = new ManagementScope("\\" + "10.0.0.254" + "\root\cimv2", Conn);
    try
    {
    //连接到实际操作的WMI范围
    Ms.Connect();
    //设定通过WMI要查询的内容
    ObjectQuery Query = new ObjectQuery("select FreeSpace ,Size ,Name from Win32_LogicalDisk where DriveType=3");
    //WQL语句,设定的WMI查询内容和WMI的操作范围,检索WMI对象集合
    ManagementObjectSearcher Searcher = new ManagementObjectSearcher(Ms, Query);
    //异步调用WMI查询
    ManagementObjectCollection ReturnCollection = Searcher.Get();
    double free = 0;
    double use = 0;
    double total = 0;
    //listBox1.Items.Clear ( ) ;
    //通过对产生的WMI的实例集合进行检索,获得硬盘信息
    foreach (ManagementObject Return in ReturnCollection)
    {
    if (Return["Name"].ToString() == "D:")
    {
    //获得硬盘的可用空间
    free = Convert.ToInt64(Return["FreeSpace"]) / mb;
    //获得硬盘的已用空间
    use = (Convert.ToInt64(Return["Size"]) - Convert.ToInt64(Return["FreeSpace"])) / mb;
    //获得硬盘的合计空间
    total = Convert.ToInt64(Return["Size"]) / mb;
    }

    }
    }
    catch (Exception ee)
    {
    //MessageBox.Show ( "连接" + textBox1.Text + "出错,出错信息为:" + ee.Message ,"出现错误!" ) ;
    }


    //查看本地进程运行状况

    foreach (Process[] thisproc in System.Diagnostics.Process.GetProcesses("10.0.0.147"))
    {
    if (thisproc.ProcessName == "Foxmail")
    {
    result = true;
    break;
    }
    else if (thisproc.ProcessName == "QQ")
    {
    result = true;
    }
    else
    {
    result = false;
    }
    }

    //远程查看计算机的服务运行状况
    public bool FindProcess(string ProcessName)
    {
    bool result = false;
    System.Management.ConnectionOptions Conn = new ConnectionOptions();
    //设定用于WMI连接操作的用户名
    Conn.Username = "Administrator";
    //设定用户的口令
    Conn.Password = "ohmydear";
    //设定用于执行WMI操作的范围
    System.Management.ManagementScope Ms = new ManagementScope("\\" + "10.0.0.254" + "\root\cimv2", Conn);
    try
    {
    //连接到实际操作的WMI范围
    Ms.Connect();
    ObjectQuery query = new ObjectQuery("SELECT * FROM Win32_Process");
    ManagementObjectSearcher searcher = new ManagementObjectSearcher(Ms, query);
    ManagementObjectCollection queryCollection = searcher.Get();
    foreach (ManagementObject m in queryCollection)
    {
    if (m["Name"].ToString() == "oracle.exe")
    {
    result = true;
    break;
    }
    else if (m["Name"].ToString() == "java.exe")
    {
    result = true;
    }
    else
    {
    result = false;
    }

    }
    }
    catch (Exception e)
    {

    throw e;
    }
    return result;

    }

  • 相关阅读:
    025、MySQL字符串大小写转化函数,文本转化大写,文本转化小写
    024、MySQL字符串替换函数,文本替换函数
    023、MySQL取文本长度取字符串长度
    022、MySQL字符串的拼接
    021、MySQL变量的使用,在MySQL中创建存储过程,并添加变量
    020、MySQL创建一个存储过程,显示存储过程,调用存储过程,删除存储过程
    019、MySQL取本季度开始时间和本季度结束时间
    018、MySQL取满足日期在两个日期之间的所有数据
    017、MySQL取第4本季度开始和结束日期
    016、MySQL取本年第一季度开始日期
  • 原文地址:https://www.cnblogs.com/lss111520/p/3296654.html
Copyright © 2011-2022 走看看