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#编程实现连接ACCESS数据库实例详解

    C#编程实现连接ACCESS数据库实例详解

    这篇文章主要介绍了C#编程实现连接ACCESS数据库的方法,以实例形式较为详细的分析了C#连接access数据库的具体步骤与相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-11-11
  • C#使用linq查询大数据集的方法

    C#使用linq查询大数据集的方法

    这篇文章主要介绍了C#使用linq查询大数据集的方法,涉及C#调用linq进行数据查询的技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-04-04
  • C#画笔使用复合数组绘制单个矩形的方法

    C#画笔使用复合数组绘制单个矩形的方法

    这篇文章主要介绍了C#画笔使用复合数组绘制单个矩形的方法,涉及C#使用画笔绘制图形的相关技巧,需要的朋友可以参考下
    2015-06-06
  • C# 解析XML和反序列化的示例

    C# 解析XML和反序列化的示例

    这篇文章主要介绍了C# 解析XML和反序列化的示例,帮助大家更好的理解和学习使用c#,感兴趣的朋友可以了解下
    2021-04-04
  • Unity3D动态对象优化代码分享

    Unity3D动态对象优化代码分享

    这篇文章主要介绍了Unity3D动态对象优化代码分享的相关资料,需要的朋友可以参考下
    2015-03-03
  • C#创建及读取DAT文件操作

    C#创建及读取DAT文件操作

    这篇文章主要介绍了C#创建及读取DAT文件操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-12-12
  • C#随机生成Unicode类型字符串

    C#随机生成Unicode类型字符串

    做测试时经常需要生成一些随机数据,最常见的就是生成随机字符串。而且往往要生成Unicode字符串,有时还要特别指定生成的字符的语言范围。下面是我觉得比较灵活的方法:
    2013-04-04
  • C#实现的json序列化和反序列化代码实例

    C#实现的json序列化和反序列化代码实例

    这篇文章主要介绍了C#实现的json序列化和反序列化代码实例,本文讲解了两种实现方法,并直接给出代码示例,需要的朋友可以参考下
    2015-06-06
  • WinForm 自动完成控件实例代码简析

    WinForm 自动完成控件实例代码简析

    在Web的应用方面有js的插件实现自动完成(或叫智能提示)功能,但在WinForm窗体应用方面就没那么好了,接下来参考一下这个实例,看看有没有以外收获,感兴趣的朋友可以了解下啊,希望本文对你有帮助啊
    2013-01-01
  • 不使用qvod播放器获取qvod播放路径的方法

    不使用qvod播放器获取qvod播放路径的方法

    这篇文章主要介绍了使用c#获取qvod播放路径的方法,大家参考使用吧
    2014-01-01

最新评论