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

本文实例讲述了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#程序设计有所帮助。

(0)

相关推荐

  • c#多线程网络聊天程序代码分享(服务器端和客户端)

    XuLIeHua类库 复制代码 代码如下: using System;using System.Collections;  using System.Collections.Generic;using System.Threading;  using System.Runtime.Serialization;using System.Runtime.Serialization.Formatters.Binary;using System.Text;using System.IO;using Sy

  • 在C#中对TCP客户端的状态封装详解

    TCP客户端连接TCP服务器端有几种应用状态:1.与服务器的连接已建立2.与服务器的连接已断开3.与服务器的连接发生异常 应用程序可按需求合理处理这些逻辑,比如:1.连接断开后自动重连2.连接断开后选择备用地址重连3.所有状态变化上报告警本文描述的TcpClient实现了状态变化的事件通知机制. 复制代码 代码如下: /// <summary>   /// 异步TCP客户端   /// </summary>   public class AsyncTcpClient : IDisp

  • .NET/C#实现识别用户访问设备的方法

    本文实例讲述了.NET/C#实现识别用户访问设备的方法.分享给大家供大家参考,具体如下: 一.需求 需要获取到用户访问网站时使用的设备,根据不同设备返回不同类型的渲染页面. 二.实现前准备 通过NuGet把UAParser程序包添加到项目中 三.实现 新建UAParseUserAgent类文件,在这个文件中进行实现. 实现代码如下: public class UAParserUserAgent { private readonly static uap.Parser s_uap; private

  • C#编程获取客户端计算机硬件及系统信息功能示例

    本文实例讲述了C#编程获取客户端计算机硬件及系统信息功能.分享给大家供大家参考,具体如下: 这里使用C#获取客户端计算机硬件及系统信息 ,包括CPU.硬盘.IP.MAC地址.操作系统等. 1.项目引用System.Management库. 2.创建HardwareHandler.cs类文件 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Manag

  • C#实现支持断点续传多线程下载客户端工具类

    复制代码 代码如下: /* .Net/C#: 实现支持断点续传多线程下载的 Http Web 客户端工具类 (C# DIY HttpWebClient) * Reflector 了一下 System.Net.WebClient ,改写或增加了若干: * DownLoad.Upload 相关方法! * DownLoad 相关改动较大! * 增加了 DataReceive.ExceptionOccurrs 事件! * 了解服务器端与客户端交互的 HTTP 协议参阅: * 使文件下载的自定义连接支持

  • C#聊天程序服务端与客户端完整实例代码

    本文所述为基于C#实现的多人聊天程序服务端与客户端完整代码.本实例省略了结构定义部分,服务端主要是逻辑处理部分代码,因此使用时需要完善一些窗体按钮之类的. 先看服务端代码如下: using System; using System.Drawing; using System.Collections; using System.ComponentModel; using System.Windows.Forms; using System.Data; using System.Net; using

  • 客户端实现蓝牙接收(C#)知识总结

    在实现蓝牙接收时,网上的资料很多,使用起来也很简单,但是我觉得还是有必要把这些知识总结下来.蓝牙开发需要用到一个第三方的库InTheHand.Net.Personal.dll,其中关键的两个类是 BluetoothClient 和 BluetoothListener,首先开启一个子线程来不断的接收数据,使用很简单,直接上代码: 复制代码 代码如下: using InTheHand.Net.Sockets; using System.Threading; public MainWindow() {

  • asp.net(C#)中给控件添加客户端js事件的方法

    放在服务器端,也可以用ajax来实现,不刷页面.但我觉得有更直接更简单方法,用一个js事件是可以实现的. 但,DropDownList不偈Button等控件提供了一些像"OnClientClick"前台事件,只有服务端事件. 想到,所有C#页面代码,最终都是生成HTML,js事件也是最终运在浏览器中,以Html为基础的.服务端控件最终生成的HTML控件有什么js事件,我们应该就能在aspx中给它添加相应的事件. DropDownList 生成的Htm是元素<Select>是

  • 获取客户端IP地址c#/vb.net各自实现代码

    公司的域环境内,程序要求获取客户端的IP地址,分部程序码分享于此. C#: VB.NET:

  • asp.net(c#)限制用户输入规定的字符和数字的代码

    一下是这个代码: 只允许 用户名输入:用户名称的开头,必须为0~9.a~z或A~Z ! 复制代码 代码如下: protected void Button3_Click(object sender, EventArgs e) { int error_count = 0; //用于识别用户名的合法性 string str = TextBox1.Text.Trim(); if (str == string.Empty) { Response.Write("用户名称不能为空!"); retur

  • C#用Activex实现Web客户端读取RFID功能的代码

    由于要在Web项目中采用RFID读取功能,所以有必要开发Activex,一般情况下开发Activex都采用VC,VB等,但对这两块不是很熟悉,所以采用C#编写Activex的方式实现. 本文方法参考网络 1.编写WindowsFromControls 2.发布WindowsFormControls为Activex 3.在web中使用该Activex 首先编写windows控件 如何编写不再详述(注意一个地方,GUID自己用vs工具生成一个,下面会用到.我的0CBD6597-3953-4B88-8

随机推荐