C#获取客户端相关信息实例总结

 更新时间:2015年09月24日 12:37:55   作者:我心依旧  
这篇文章主要介绍了C#获取客户端相关信息的方法,以实例形式总结了C#获取客户端IP地址、网络连接、硬件信息等相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下

本文实例讲述了C#获取客户端相关信息的方法。分享给大家供大家参考。具体如下:

【本机IP地址】

第一种方法:

IPHostEntry hostentry = Dns.Resolve(Dns.GetHostName());
IPAddress address=hostentry.AddressList[0];

第二种方法:

复制代码 代码如下:
Dns.GetHostAddresses(Dns.GetHostName())[0].ToString();

【判断当前用户是否连网】

PingReply reply = new Ping().Send(address);
if (reply.Status == IPStatus.Success)
 MessageBox.Show("Ping successfully.");
else
 MessageBox.Show("Ping failure.");

【获取当前客户端硬盘盘符】

复制代码 代码如下:
string[] mydrivers = Directory.GetLogicalDrives();

【判断客户端移动硬盘、硬盘】

SelectQuery select = new SelectQuery("select * from win32_logicaldisk");
ManagementObjectSearcher mos = new ManagementObjectSearcher(select);
foreach (ManagementObject disk in mos.Get())
{
  string msg = disk["Name"].ToString();
  DriveInfo info = new DriveInfo(msg);
  switch (info.DriveType.ToString())
  {
   case "Unknown":
    label1.Text += msg + "这是未知设备__";
    break;
   case "NoRootDirectory":
    label1.Text += msg + "这是未分区__";
    break;
   case "Removable":
    label1.Text += msg + "这是可以动磁盘__";
    break;
   case "Fixed":
    label1.Text += msg + "这是硬盘__";
    break;
   case "Network":
    label1.Text += msg + "这是网络驱动器__";
    break;
   case "CDRom":
    label1.Text += msg + "这是光驱__";
    break;
  }
}

【获取当前显示的长宽】
宽:

复制代码 代码如下:
Screen.PrimaryScreen.WorkingArea.Width

长:
复制代码 代码如下:
Screen.PrimaryScreen.WorkingArea.Height

【获取客户端进程信息】

复制代码 代码如下:
System.Diagnostics.Process[] processes = System.Diagnostics.Process.GetProcesses();

【关闭进程信息】

foreach (System.Diagnostics.Process p in processes)
{
  if (p.ProcessName == "IntelliTrace")
  {
   p.Kill();
  }
}

【判断客户端是否安装声卡】

[DllImport("winmm.dll", EntryPoint = "waveOutGetNumDevs")]
public static extern int waveOutGetNumDevs();
private void button1_Click(object sender, EventArgs e)
{
 if (waveOutGetNumDevs() != 0)
 {
  MessageBox.Show("已经安装声卡");
 }
 else {
  MessageBox.Show("未安装声卡");
 }
}

【获取计算机名称和当前登录用户】
计算机名称:

复制代码 代码如下:
Dns.GetHostName();

当前登录用户:
复制代码 代码如下:
Environment.GetEnvironmentVariable("UserName");

希望本文所述对大家的C#程序设计有所帮助。

相关文章

  • C# Resources资源详解

    C# Resources资源详解

    这篇文章主要为大家详细介绍了C# Resources资源,包括Resource Basics、Strongly Typed Resources等,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-01-01
  • C#中枚举类型和radiobox关联操作的方法

    C#中枚举类型和radiobox关联操作的方法

    这篇文章主要介绍了C#中枚举类型和radiobox关联操作的方法,实例分析了C#中枚举类型及与控件关联操作的相关技巧,需要的朋友可以参考下
    2015-04-04
  • C# winform主界面打开并关闭登录界面的方法

    C# winform主界面打开并关闭登录界面的方法

    这篇文章主要介绍了C# winform主界面打开并关闭登录界面的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-07-07
  • C#搜索TreeView子节点,保留父节点的方法

    C#搜索TreeView子节点,保留父节点的方法

    这篇文章主要介绍了C#搜索TreeView子节点,保留父节点的方法,实例分析了C#操作TreeView节点的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-09-09
  • C#中using的使用方式详解

    C#中using的使用方式详解

    这篇文章主要介绍了C#中using的使用方式方式详解,本文通过示例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-06-06
  • C#启动和停止windows服务的实例代码

    C#启动和停止windows服务的实例代码

    这篇文章介绍了C#启动和停止windows服务的实例代码,有需要的朋友可以参考一下
    2013-09-09
  • C# ODP.NET 调用Oracle函数返回值时报错的一个解决方案

    C# ODP.NET 调用Oracle函数返回值时报错的一个解决方案

    这篇文章主要介绍了C# ODP.NET 调用Oracle函数返回值时报错的一个解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-12-12
  • C#桥接模式完整实例

    C#桥接模式完整实例

    这篇文章主要介绍了C#桥接模式,以实例形式较为详细的分析了C#桥接模式的实现原理与相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-07-07
  • 深入多线程之:双向信号与竞赛的用法分析

    深入多线程之:双向信号与竞赛的用法分析

    本篇文章是对双向信号与竞赛的用法进行了详细的分析介绍。需要的朋友参考下
    2013-05-05
  • C# VB 实现10进制 16进制之间互相转换

    C# VB 实现10进制 16进制之间互相转换

    如何将10进制转成16进制,又如何将16进制数转成10进制,本文将介绍C#和VB实现代码,需要了解的朋友可以参考下
    2012-11-11

最新评论