#pragma comment( lib, "Iphlpapi" )
#pragma comment( lib, "Ws2_32" )#include <windows.h>
#include <Iphlpapi.h>
#include <iostream.h>
#include <stdio.h>
int main( ) {IPAddr ip = 0;
unsigned char mac[6];
DWORD error = 0; DWORD dwSize = sizeof( ULONG) ;
ip = inet_addr("192.168.0.1");
//ip = inet_addr("xxx.xxx.xxx.xxx");
error = SendARP(ip,0,(PULONG)&mac,&dwSize);
printf( "%.2x", mac[4] );
return 0;
}
为什么每次都为cc
#pragma comment( lib, "Ws2_32" )#include <windows.h>
#include <Iphlpapi.h>
#include <iostream.h>
#include <stdio.h>
int main( ) {IPAddr ip = 0;
unsigned char mac[6];
DWORD error = 0; DWORD dwSize = sizeof( ULONG) ;
ip = inet_addr("192.168.0.1");
//ip = inet_addr("xxx.xxx.xxx.xxx");
error = SendARP(ip,0,(PULONG)&mac,&dwSize);
printf( "%.2x", mac[4] );
return 0;
}
为什么每次都为cc
{
NCB ncb;
UCHAR uRetCode;
CString s1;
memset( &ncb, 0, sizeof(ncb) );
ncb.ncb_command = NCBRESET;
ncb.ncb_lana_num = lana_num;
uRetCode = Netbios( &ncb );
memset( &ncb, 0, sizeof(ncb) );
ncb.ncb_command = NCBASTAT;
ncb.ncb_lana_num = lana_num; strcpy( (char *)ncb.ncb_callname, "* " );
ncb.ncb_buffer = (unsigned char *) &Adapter;
ncb.ncb_length = sizeof(Adapter); uRetCode = Netbios( &ncb );
if ( uRetCode == 0 ) {
s1.Format( "%02X%02X%02X%02X%02X%02X", lana_num,
Adapter.adapt.adapter_address[0],
Adapter.adapt.adapter_address[1],
Adapter.adapt.adapter_address[2],
Adapter.adapt.adapter_address[3],
Adapter.adapt.adapter_address[4],
Adapter.adapt.adapter_address[5] );
}
return s1;
}
CString CReportApp::getmac()
{
CString s1;
NCB ncb;
UCHAR uRetCode;
LANA_ENUM lana_enum; memset( &ncb, 0, sizeof(ncb) );
ncb.ncb_command = NCBENUM; ncb.ncb_buffer = (unsigned char *) &lana_enum;
ncb.ncb_length = sizeof(lana_enum);
uRetCode = Netbios( &ncb );
if ( uRetCode == 0 )
{
return (getmac_one( lana_enum.lana[0]));
}
s1="";
return s1;
}
http://www.aslike.net