zoukankan      html  css  js  c++  java
  • C#获取本地计算机名,IP,MAC(物理)地址(转)

    using System;
    using System.Drawing;
    using System.Management;
    using System.Net;
    using System.Net.Sockets;
    using System.Collections;
    using System.ComponentModel;
    using System.Windows.Forms;
    using System.Data;

    namespace MAC_IP_name
    {
        /// <summary>
        /// Form1 的摘要说明。
        /// </summary>
        public class Form1 : System.Windows.Forms.Form
        {
            private System.Windows.Forms.Label label4;
            private System.Windows.Forms.GroupBox groupBox1;
            private System.Windows.Forms.TextBox txtMac;
            private System.Windows.Forms.TextBox txtIp;
            private System.Windows.Forms.TextBox txtName;
            private System.Windows.Forms.Label lblMac;
            private System.Windows.Forms.Label lblIp;
            private System.Windows.Forms.Label lblName;
            private System.Windows.Forms.Button button1;
            private System.Windows.Forms.Button button2;
            /// <summary>
            /// 必需的设计器变量。
            /// </summary>
            private System.ComponentModel.Container components = null;

            public Form1()
            {
                //
                // Windows 窗体设计器支持所必需的
                //
                InitializeComponent();

                //
                // TODO: 在 InitializeComponent 调用后添加任何构造函数代码
                //
            }

            /// <summary>
            /// 清理所有正在使用的资源。
            /// </summary>
            protected override void Dispose( bool disposing )
            {
                if( disposing )
                {
                    if (components != null)
                    {
                        components.Dispose();
                    }
                }
                base.Dispose( disposing );
            }

            #region Windows 窗体设计器生成的代码
            /// <summary>
            /// 设计器支持所需的方法 - 不要使用代码编辑器修改
            /// 此方法的内容。
            /// </summary>
            private void InitializeComponent()
            {
                this.label4 = new System.Windows.Forms.Label();
                this.groupBox1 = new System.Windows.Forms.GroupBox();
                this.button2 = new System.Windows.Forms.Button();
                this.txtMac = new System.Windows.Forms.TextBox();
                this.txtIp = new System.Windows.Forms.TextBox();
                this.txtName = new System.Windows.Forms.TextBox();
                this.lblMac = new System.Windows.Forms.Label();
                this.lblIp = new System.Windows.Forms.Label();
                this.lblName = new System.Windows.Forms.Label();
                this.button1 = new System.Windows.Forms.Button();
                this.groupBox1.SuspendLayout();
                this.SuspendLayout();
                //
                // label4
                //
                this.label4.AutoSize = true;
                this.label4.Font = new System.Drawing.Font("楷体_GB2312", 15F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((System.Byte)(134)));
                this.label4.ForeColor = System.Drawing.Color.FromArgb(((System.Byte)(255)), ((System.Byte)(128)), ((System.Byte)(128)));
                this.label4.Location = new System.Drawing.Point(49, 16);
                this.label4.Name = "label4";
                this.label4.Size = new System.Drawing.Size(245, 26);
                this.label4.TabIndex = 7;
                this.label4.Text = "获取本机计算机名IP与MAC";
                //
                // groupBox1
                //
                this.groupBox1.Controls.Add(this.button2);
                this.groupBox1.Controls.Add(this.txtMac);
                this.groupBox1.Controls.Add(this.txtIp);
                this.groupBox1.Controls.Add(this.txtName);
                this.groupBox1.Controls.Add(this.lblMac);
                this.groupBox1.Controls.Add(this.lblIp);
                this.groupBox1.Controls.Add(this.lblName);
                this.groupBox1.Controls.Add(this.button1);
                this.groupBox1.Location = new System.Drawing.Point(16, 56);
                this.groupBox1.Name = "groupBox1";
                this.groupBox1.Size = new System.Drawing.Size(320, 208);
                this.groupBox1.TabIndex = 11;
                this.groupBox1.TabStop = false;
                this.groupBox1.Text = "获取区";
                //
                // button2
                //
                this.button2.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((System.Byte)(134)));
                this.button2.Location = new System.Drawing.Point(184, 160);
                this.button2.Name = "button2";
                this.button2.Size = new System.Drawing.Size(88, 32);
                this.button2.TabIndex = 18;
                this.button2.Text = "退出";
                this.button2.Click += new System.EventHandler(this.button2_Click);
                //
                // txtMac
                //
                this.txtMac.BackColor = System.Drawing.Color.FromArgb(((System.Byte)(224)), ((System.Byte)(224)), ((System.Byte)(224)));
                this.txtMac.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((System.Byte)(134)));
                this.txtMac.ForeColor = System.Drawing.Color.FromArgb(((System.Byte)(255)), ((System.Byte)(128)), ((System.Byte)(0)));
                this.txtMac.Location = new System.Drawing.Point(128, 110);
                this.txtMac.Name = "txtMac";
                this.txtMac.ReadOnly = true;
                this.txtMac.Size = new System.Drawing.Size(168, 21);
                this.txtMac.TabIndex = 17;
                this.txtMac.Text = "";
                //
                // txtIp
                //
                this.txtIp.BackColor = System.Drawing.Color.FromArgb(((System.Byte)(224)), ((System.Byte)(224)), ((System.Byte)(224)));
                this.txtIp.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((System.Byte)(134)));
                this.txtIp.ForeColor = System.Drawing.Color.FromArgb(((System.Byte)(255)), ((System.Byte)(128)), ((System.Byte)(0)));
                this.txtIp.Location = new System.Drawing.Point(128, 70);
                this.txtIp.Name = "txtIp";
                this.txtIp.ReadOnly = true;
                this.txtIp.Size = new System.Drawing.Size(168, 21);
                this.txtIp.TabIndex = 16;
                this.txtIp.Text = "";
                //
                // txtName
                //
                this.txtName.BackColor = System.Drawing.Color.FromArgb(((System.Byte)(224)), ((System.Byte)(224)), ((System.Byte)(224)));
                this.txtName.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((System.Byte)(134)));
                this.txtName.ForeColor = System.Drawing.Color.FromArgb(((System.Byte)(255)), ((System.Byte)(128)), ((System.Byte)(0)));
                this.txtName.Location = new System.Drawing.Point(128, 30);
                this.txtName.Name = "txtName";
                this.txtName.ReadOnly = true;
                this.txtName.Size = new System.Drawing.Size(168, 21);
                this.txtName.TabIndex = 15;
                this.txtName.Text = "";
                //
                // lblMac
                //
                this.lblMac.AutoSize = true;
                this.lblMac.Font = new System.Drawing.Font("宋体", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((System.Byte)(134)));
                this.lblMac.ForeColor = System.Drawing.Color.FromArgb(((System.Byte)(0)), ((System.Byte)(0)), ((System.Byte)(64)));
                this.lblMac.Location = new System.Drawing.Point(32, 112);
                this.lblMac.Name = "lblMac";
                this.lblMac.Size = new System.Drawing.Size(88, 22);
                this.lblMac.TabIndex = 14;
                this.lblMac.Text = "MAC地址为:";
                //
                // lblIp
                //
                this.lblIp.AutoSize = true;
                this.lblIp.Font = new System.Drawing.Font("宋体", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((System.Byte)(134)));
                this.lblIp.ForeColor = System.Drawing.Color.FromArgb(((System.Byte)(0)), ((System.Byte)(0)), ((System.Byte)(64)));
                this.lblIp.Location = new System.Drawing.Point(40, 72);
                this.lblIp.Name = "lblIp";
                this.lblIp.Size = new System.Drawing.Size(80, 22);
                this.lblIp.TabIndex = 13;
                this.lblIp.Text = "IP地址为:";
                //
                // lblName
                //
                this.lblName.AutoSize = true;
                this.lblName.Font = new System.Drawing.Font("宋体", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((System.Byte)(134)));
                this.lblName.ForeColor = System.Drawing.Color.FromArgb(((System.Byte)(0)), ((System.Byte)(0)), ((System.Byte)(64)));
                this.lblName.Location = new System.Drawing.Point(24, 32);
                this.lblName.Name = "lblName";
                this.lblName.Size = new System.Drawing.Size(97, 22);
                this.lblName.TabIndex = 12;
                this.lblName.Text = "计算机名为:";
                //
                // button1
                //
                this.button1.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((System.Byte)(134)));
                this.button1.Location = new System.Drawing.Point(48, 160);
                this.button1.Name = "button1";
                this.button1.Size = new System.Drawing.Size(88, 32);
                this.button1.TabIndex = 11;
                this.button1.Text = "点击获取";
                this.button1.Click += new System.EventHandler(this.button1_Click_1);
                //
                // Form1
                //
                this.AutoScaleBaseSize = new System.Drawing.Size(6, 14);
                this.ClientSize = new System.Drawing.Size(352, 285);
                this.Controls.Add(this.groupBox1);
                this.Controls.Add(this.label4);
                this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.Fixed3D;
                this.MaximizeBox = false;
                this.Name = "Form1";
                this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
                this.Text = "IP,计算机名,MAC查询";
                this.groupBox1.ResumeLayout(false);
                this.ResumeLayout(false);

            }
            #endregion

            /// <summary>
            /// 应用程序的主入口点。
            /// </summary>
            [STAThread]
            static void Main()
            {
                Application.Run(new Form1());
            }

            private void button1_Click_1(object sender, System.EventArgs e)
            {
                string s="",mac="";
                //
                //name
                //
                string hostInfo = Dns.GetHostName();            

                //
                //IP
                System.Net.IPAddress[] addressList = Dns.GetHostByName(Dns.GetHostName()).AddressList;  
                for (int i = 0; i < addressList.Length; i ++)
                {
                    s += addressList[i].ToString();
                }
                //
                //mac
                //


                ManagementClass mc;
                mc=new ManagementClass("Win32_NetworkAdapterConfiguration");
                ManagementObjectCollection moc=mc.GetInstances();
                foreach(ManagementObject mo in moc)
                {
                    if(mo["IPEnabled"].ToString()=="True")
                        mac=mo["MacAddress"].ToString();                    
                }


                txtName.Text=hostInfo;
                txtIp.Text=s;
                txtMac.Text=mac;


                button1.Enabled=false;
                button2.Focus();

            }

            private void button2_Click(object sender, System.EventArgs e)
            {
                Application.Exit();
            }
        }
    }
  • 相关阅读:
    volatile双重检查锁定与延迟初始化
    Maven内置属性,pom属性
    spring-如何将spring源码成功导入Eclipse中
    Java8-函数复合用法
    JavaSE-序列化和反序列化
    JavaSE-java8-谓词复合的用法
    表单验证:nice Validator
    eclipse ide for java ee developers 开发环境搭建(J2EE) 【转载】
    表格
    MyBatis子查询
  • 原文地址:https://www.cnblogs.com/saptechnique/p/1168301.html
Copyright © 2011-2022 走看看