test.cpp : Defines the entry point for the console application.
#pragma once
#include <winsock2.h>
#include "winnt.h"
#include "windef.h"
#include <string>
#include <atlstr.h>
#include "iptypes.h"
#include "iphlpapi.h"
#include "Setupapi.h"
#include <ntddndis.h>
//#include <hidsdi.h>
//#pragma comment (lib, "hid")
#pragma comment(lib, "IPHLPAPI.lib")
#pragma comment(lib,"Ws2_32.lib")
#pragma comment(lib, "Setupapi.lib")
using namespace std;
#define MACADDRESS_BYTELEN 6 // MAC地址字节长度
typedef struct _MACADDRESS
{
BYTE SrcMacAddr[MACADDRESS_BYTELEN]; // 原生MAC地址
BYTE CurMacAddr[MACADDRESS_BYTELEN]; // 当前MAC地址
} MACADDRESS;
const GUID GUID_QUERYSET[] = {
// 网卡原生MAC地址(包含USB网卡)
{0xAD498944, 0x762F, 0x11D0, 0x8D, 0xCB, 0x00, 0xC0, 0x4F, 0xC3, 0x35, 0x8C},
// 网卡原生MAC地址(剔除USB网卡)
{0xAD498944, 0x762F, 0x11D0, 0x8D, 0xCB, 0x00, 0xC0, 0x4F, 0xC3, 0x35, 0x8C},
};
HDEVINFO m_hDevInfo;
static BOOL WDK_GetMacAddress(TCHAR * DevicePath, MACADDRESS * pMacAddress, BOOL isIncludeUSB);
CString GetDeviceProperty(SP_DEVINFO_DATA &hDeviceInfoData, DWORD dwProperty)
{
CString strProperty;
DWORD dwData = 0;
DWORD dwSize = 4096;
LPTSTR buffer = (LPTSTR)LocalAlloc(LPTR, dwSize);
while (!Setu
根据驱动路径获取无线网卡的mac
最新推荐文章于 2020-09-07 16:47:04 发布
本文介绍了一种使用C++编程获取Windows系统中无线网卡MAC地址的方法,涉及WinAPI和NDIS控制函数,通过遍历设备接口并调用DeviceIoControl进行查询。
摘要由CSDN通过智能技术生成