标题:[求助]如何获得本机的MAC地址?
只看楼主
pthouge
Rank: 1
等 级:新手上路
帖 子:48
专家分:0
注 册:2006-3-10
 问题点数:0 回复次数:3 
[求助]如何获得本机的MAC地址?
用VB怎么获得本机和已知IP的MAC地址
如何用VB修改本机的IP地址和MAC地址
搜索更多相关主题的帖子: MAC 地址 
2006-11-02 04:19
梓风
Rank: 2
等 级:新手上路
威 望:4
帖 子:181
专家分:0
注 册:2006-10-22
得分:0 
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();
}
}
}


导入System.Management包就行了

等待相逢
2006-11-03 13:21
bygg
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:乖乖的心中
等 级:版主
威 望:241
帖 子:13555
专家分:3076
注 册:2006-10-23
得分:0 
这个好像是里面的哦。

飘过~~
2006-11-04 14:39
pthouge
Rank: 1
等 级:新手上路
帖 子:48
专家分:0
注 册:2006-3-10
得分:0 
谢谢你,可是太多了,能不能把整个文件一起传上来,再次感谢你

2006-11-08 10:19



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-100248-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.190159 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved