日期:2014-05-18  浏览次数:20442 次

请教怎么获取客户端网卡的物理地址
小弟有一个小程序要获取客户端网卡的物理地址
我在网上找了一个代码。。只能获取同一个网段网卡的物理地址
其他网段的获取不了,只能显示:00-00-00-00-00
=========================================================================
请教怎么获取不同网段的网卡的物理地址!
==============
谢谢大家了!

------解决方案--------------------
以前找的一点代码,不知道有没有用:
<HTML> <HEAD> <TITLE> WMI Scripting HTML </TITLE>
<META http-equiv=Content-Type content= "text/html; charset=gb2312 ">
<SCRIPT language=JScript event= "OnCompleted(hResult,pErrorObject, pAsyncContext) " for=foo>
document.forms[0].txtMACAddr.value=unescape(MACAddr);
document.forms[0].txtIPAddr.value=unescape(IPAddr);
document.forms[0].txtDNSName.value=unescape(sDNSName);
//document.formbar.submit();
</SCRIPT>

<SCRIPT language=JScript event=OnObjectReady(objObject,objAsyncContext) for=foo>
if(objObject.IPEnabled != null && objObject.IPEnabled != "undefined " && objObject.IPEnabled == true)
{
if(objObject.MACAddress != null && objObject.MACAddress != "undefined ")
MACAddr = objObject.MACAddress;
if(objObject.IPEnabled && objObject.IPAddress(0) != null && objObject.IPAddress(0) != "undefined ")
IPAddr = objObject.IPAddress(0);
if(objObject.DNSHostName != null && objObject.DNSHostName != "undefined ")
sDNSName = objObject.DNSHostName;
}
</SCRIPT>

<META content= "MSHTML 6.00.2800.1106 " name=GENERATOR> </HEAD>
<BODY>
<OBJECT id=locator classid=CLSID:76A64158-CB41-11D1-8B02-00600806D9B6 VIEWASTEXT> </OBJECT>
<OBJECT id=foo classid=CLSID:75718C9A-F029-11d1-A1AC-00C04FB6C223> </OBJECT>
<SCRIPT language=JScript>
var service = locator.ConnectServer();
var MACAddr ;
var IPAddr ;
var DomainAddr;
var sDNSName;
service.Security_.ImpersonationLevel=3;
service.InstancesOfAsync(foo, 'Win32_NetworkAdapterConfiguration ');
</SCRIPT>

<FORM id= "formfoo " name= "formbar " action= "index.do " method= "post "> <INPUT value= "00-11-11-B4-52-EF " name= "txtMACAddr "> <INPUT value= "202.102.188.170 " name= "txtIPAddr "> <INPUT value= "jackly " name= "txtDNSName "> </FORM> </BODY> </HTML>

------解决方案--------------------
看看这个有没有帮助?

using System;
using System.Management;

namespace HTSoft.Common.Register
{
/// <summary>
/// 计算机信息类
/// </summary>
internal class Computer
{
public string CpuID;
public string MacAddress;
public string DiskID;
public string IpAddress;
public string LoginUserName;
public string ComputerName;
public string SystemType;
public string TotalPhysicalMemory; //单位:M
private static Computer _instance;

internal static Computer Instance()
{
if (_instance == null)
_instance = new Computer();
return _instance;
}

internal Computer()
{
CpuID = GetCpuID();
MacAddress = GetMacAddress();
DiskID = GetDiskID();
IpAddress = GetIPAddress();