前面的一篇文章说到,通过GetAdaptersInfo可以查询网卡的一些相关的信息,但是通过测试,发现无线网卡的pAdapter->Type为6,并不是71,所以介绍一种新的方法来判断是否无线网卡。
设备的一些信息存储在注册表里,可以通过查询注册表,得到设备的一些信息。
关键:查询,HKEY_LOCAL_MACHINE//System//CurrentControlSet//Control//Network//{4D36E972-E325-11CE-BFC1-08002BE10318}下的MediaSubType的值来进行判断,为1则是PCI网卡,为2则是无线网卡。
用到的函数:无非就是一些查询注册表的函数了
RegOpenKeyEx
RegQueryValueEx
RegCloseKey
在判断到存在无线网卡后,查询它的GUID(全局统一标识符),也就是设备真实的名字,
HKEY_LOCAL_MACHINE//SYSTEM//CurrentControlSet//Control//Class{4D36E972-E325-11CE-BFC1-08002BE10318}/下相对应的CLASS项目然后再得到键NetCfgInstanceId 的值,即GUID,然后可以使用CreateFile打开这个设备,获得这个设备的句柄,从而进行相应的操作。