C#实现获取运行平台系统信息的方法

本文实例讲述了C#获取运行平台系统信息的方法,主要可以实现C#获取系统启动经过的毫秒数,相连网络域名,系统启动经过的毫秒数等,并有关于ListView控件的相关操作。

具体的实现代码如下:

using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;
namespace 获取系统环境和平台信息
{
 public class Form1 : System.Windows.Forms.Form
 {
 private System.Windows.Forms.Button button1;
 private System.Windows.Forms.Button button2;
 private System.Windows.Forms.ListView listView1;
 private System.Windows.Forms.ColumnHeader columnHeader1;
 private System.Windows.Forms.ColumnHeader columnHeader2;
 private System.ComponentModel.Container components = null;
 public Form1()
 {
  InitializeComponent();
 }
 protected override void Dispose( bool disposing )
 {
  if( disposing )
  {
  if (components != null)
  {
   components.Dispose();
  }
  }
  base.Dispose( disposing );
 }
 #region Windows 窗体设计器生成的代码
 private void InitializeComponent()
 {
  this.button1 = new System.Windows.Forms.Button();
  this.button2 = new System.Windows.Forms.Button();
  this.listView1 = new System.Windows.Forms.ListView();
  this.columnHeader1 = new System.Windows.Forms.ColumnHeader();
  this.columnHeader2 = new System.Windows.Forms.ColumnHeader();
  this.SuspendLayout();
  // button1
  this.button1.Location = new System.Drawing.Point(48, 224);
  this.button1.Name = "button1";
  this.button1.Size = new System.Drawing.Size(56, 32);
  this.button1.TabIndex = 4;
  this.button1.Text = "获取";
  this.button1.Click += new System.EventHandler(this.button1_Click);
  // button2
  this.button2.Location = new System.Drawing.Point(184, 224);
  this.button2.Name = "button2";
  this.button2.Size = new System.Drawing.Size(56, 32);
  this.button2.TabIndex = 5;
  this.button2.Text = "退出";
  this.button2.Click += new System.EventHandler(this.button2_Click);
  //
  // listView1
  this.listView1.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
           this.columnHeader1,
           this.columnHeader2});
  this.listView1.GridLines = true;
  this.listView1.Location = new System.Drawing.Point(16, 24);
  this.listView1.Name = "listView1";
  this.listView1.Size = new System.Drawing.Size(256, 184);
  this.listView1.TabIndex = 6;
  this.listView1.View = System.Windows.Forms.View.Details;
  // columnHeader1
  this.columnHeader1.Text = "属性";
  this.columnHeader1.Width = 100;
  // columnHeader2
  this.columnHeader2.Text = "值";
  this.columnHeader2.Width = 175;
  // Form1
  this.AutoScaleBaseSize = new System.Drawing.Size(6, 14);
  this.ClientSize = new System.Drawing.Size(292, 273);
  this.Controls.Add(this.listView1);
  this.Controls.Add(this.button2);
  this.Controls.Add(this.button1);
  this.Name = "Form1";
  this.Text = "获取系统环境和平台信息";
  this.ResumeLayout(false);
 }
 #endregion
 [STAThread]
 static void Main()
 {
  Application.Run(new Form1());
 }
 private void button2_Click(object sender, System.EventArgs e)
 {
  // 关闭当前窗体
  this.Close();
 }
 private void button1_Click(object sender, System.EventArgs e)
 {
  listView1.Items.Clear(); // 清除ListView控件中的项
  ListViewItem listViewItem;
  try
  {
  // 加入计算机名
  listViewItem = new ListViewItem("计算机名", 0);
  listViewItem.SubItems.Add(Environment.MachineName);
  listView1.Items.Add(listViewItem);
  // 加入当前平台名
  listViewItem = new ListViewItem("当前平台名", 0);
  listViewItem.SubItems.Add(Environment.OSVersion.Platform.ToString());
  listView1.Items.Add(listViewItem);
  // 加入平台版本号
  listViewItem = new ListViewItem("平台版本号", 0);
  listViewItem.SubItems.Add(Environment.OSVersion.Version.ToString());
  listView1.Items.Add(listViewItem);
  // 与系统相连的网络名
  listViewItem = new ListViewItem("相连网络域名", 0);
  listViewItem.SubItems.Add(Environment.UserDomainName);
  listView1.Items.Add(listViewItem);
  // 系统目录路径
  listViewItem = new ListViewItem("系统启动经过的毫秒数", 0);
  listViewItem.SubItems.Add(Environment.SystemDirectory );
  listView1.Items.Add(listViewItem);
  // 系统当前时间
  listViewItem = new ListViewItem("系统当前时间", 0);
  listViewItem.SubItems.Add(DateTime.Now.ToString());
  listView1.Items.Add(listViewItem);
  // 系统启动后经过的毫秒数
  listViewItem = new ListViewItem("系统启动经过的毫秒数", 0);
  listViewItem.SubItems.Add(Environment.TickCount.ToString());
  listView1.Items.Add(listViewItem);
  }
  catch(Exception exc)
  {
  MessageBox.Show(exc.Message, "提示");
  }
 }
 // 为避免编写的代码冗长,添加 AddItem 方法
 public void AddItem(string sItem)
 {
  // 添加项 sItem 到 listView1 中
  listView1.Items.Add(sItem);
 }
 }
}
(0)

相关推荐

  • 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

  • C#如何取硬件标志

    using System; using System.Runtime.InteropServices; using  System.Management; namespace Hardware { /// <summary> /// Hardware_Mac 的摘要说明. /// </summary> public class HardwareInfo {   //取机器名    public string GetHostName()   {    return System.Ne

  • C#获取系统版本信息方法

    直接贴代码: 复制代码 代码如下: public class OSInfoMation { public static string OSBit() { try { ConnectionOptions oConn = new ConnectionOptions(); System.Management.ManagementScope managementScope = new System.Management.ManagementScope("\\\\localhost", oCon

  • 使用C#获取系统特殊文件夹路径的解决方法

    win7下无法向c盘写入文件,当前用户只能向自己的用户文件夹写入文件,比如MyDocuments,文件夹,用c#得到这些文件夹的目录方法是: 复制代码 代码如下: string path=System.Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);  Environment.SpecialFolder 枚举说明: CommonApplicationData 目录,它用作所有用户使用的应用程序特定数据的公共储存库.

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

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

  • 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#中对TCP客户端的状态封装详解

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

  • C#实现的Socket服务器端、客户端代码分享

    服务端: using System; using System.Collections.Generic; using System.Net; using System.Net.Sockets; using System.Text; namespace Server { class Program { static void Main(string[] args) { Socket server = new Socket(AddressFamily.InterNetwork, SocketType

  • c# socket编程udp客户端实现代码分享

    复制代码 代码如下: Console.WriteLine("This is a Client, host name is {0}", Dns.GetHostName());//设置服务端终结点IPEndPoint ipe = new IPEndPoint(IPAddress.Parse("127.0.0.1"), 8001);//创建与服务端连接的套接字,指定网络类型,数据连接类型和网络协议Socket ConnSocket = new Socket(Address

  • C# 当前系统时间获取及时间格式详解

    C# 当前系统时间获取及时间格式 最近学习C# 的知识,对获取系统时间和时间格式进行了总结,这是本文在网上整理的详细资料,大家看下! --DateTime 数字型 System.DateTime currentTime=new System.DateTime(); 取当前年月日时分秒 currentTime=System.DateTime.Now; 取当前年 int 年=currentTime.Year; 取当前月 int 月=currentTime.Month; 取当前日 int 日=curr

  • 使用C#配合ArcGIS Engine进行地理信息系统开发

    简单的地图读取.展示 终于到暑假了...开始认真整理整理相关学习的心得体会咯~ 先把很久之前挖的关于C# 二次开发的坑给填上好了~ 这次先计划用一个月把C# ArcEngine 10.0相关开发的学习心得给发布出来好啦~ 第一部分就是最简单的helloworld了:掌握使用控件创建简单的GIS应用程序~ (前期相关环境配置略掉~请自行百度~) 首先打开VS2010,,通过(文件--新建--项目--Windos窗体应用程序) ,我们新建一个名叫"MyHelloWorld"的Windows

  • C# 获取系统进程的用户名

    需要添加对 System.Management.dll 的引用 复制代码 代码如下: using System.Diagnostics; using System.Management;static void Main(string[] args) { foreach (Process p in Process.GetProcesses()) { Console.Write(p.ProcessName); Console.Write("----"); Console.WriteLine

  • 分享用于操作FTP的客户端C#类

    这是一个用于操作FTP的客户端C#类,类已经封装好了各种常用的Ftp操作方法,调用非常简单,你不需要关心ftp连接和操作的细节,只要调用这个类里的相关方法就可以了. using System; using System.Net; using System.IO; using System.Text; using System.Net.Sockets; using System.Threading; namespace DotNet.Utilities { public class FTPClie

随机推荐