>>这个按照原理似乎不行吧?
所以我搞不明白啊
我想单纯的被动接收数据包是分析不出什么东西的,因为出来的数据包已经是修改过的了,不
知道有没有什么途径可以主动要求远程主机调用本地API,把结果返回,就象nbtstat那样
这是我在旧贴中找到的读取本机的,我手头没有msdn,不知道这个API是通过什么途径得到MAC的,哪位知道的告诉请我一声:
来自:seawalker 时间:2000-12-1 4:29:43 ID:408408
为什么还用这个过时的netbios函数?用IpHelper函数不是很好吗,在win2000
下面我编的一个C++的Console程序:
#define _WIN32_WINNT 0x0500
#include <stdio.h>
#include <windows.h>
#include <Iphlpapi.h>
#pragma comment(lib, "Iphlpapi")
void main()
{
DWORD ret, dwSize;
IP_ADAPTER_INFO pTemp[10], *p;
dwSize = 10 * sizeof(IP_ADAPTER_INFO);
ret = GetAdaptersInfo(pTemp, &dwSize);
if(ret == ERROR_SUCCESS){
p = pTemp;
printf("OK/n");
for(unsigned int i=0; i<10; i++){
if(p == NULL)
break;
printf("AdapterName : %s/n", p->AdapterName);
printf("Description : %s/n", p->Description);
printf("MAC Addr(%d): ", p->AddressLength);
for(unsigned int j=0; j < p->AddressLength; j++)
if(j != p->AddressLength-1)
printf("%.2X-", p->Address[j]);
else
printf("%.2X", p->Address[j]);
printf("/n");
printf("IP Addr : %s/n", p->IpAddressList.IpAddress.String);
p = p->Next;
printf("/n");
}
}
else
printf("FT %d/n", GetLastError());
}