首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > Windows Mobile >

WM6.0 WiFi连接AP,该怎么解决

2013-01-26 
WM6.0 WiFi连接AP我现在已经完成以下步骤:1. 打开NDISUIOm_hNDUIOCreateFile(NDISUIO_DEVICE_NAME)2. 打

WM6.0 WiFi连接AP
我现在已经完成以下步骤:
1. 打开NDISUIO
m_hNDUIO=CreateFile(NDISUIO_DEVICE_NAME)

2. 打开NDIS获取网卡名字
hNDIS = CreateFile(DD_NDIS_DEVICE_NAME)
DeviceIoControl(hNDIS , IOCTL_NDIS_GET_ADAPTER_NAMES)

3. 获取AP列表
PNDISUIO_QUERY_OID pNQO = reinterpret_cast<PNDISUIO_QUERY_OID>(buffer);
pNQO->ptcDeviceName = const_cast<LPWSTR>(pAdapter);
pNQO->Oid = OID_802_11_BSSID_LIST;
DeviceIoControl(m_hNDUIO, IOCTL_NDISUIO_QUERY_OID_VALUE)

4. 设置参数连接AP
 1) 设置OID_802_11_INFRASTRUCTURE_MODE=BSSIDInfo.Infastructure
 2) 设置OID_802_11_PRIVACY_FILTER=Ndis802_11PrivFilterAcceptAll
 3) 设置OID_802_11_AUTHENTICATION_MODE=Ndis802_11AuthModeOpen
 4) 设置OID_802_11_ENCRYPTION_STATUS=Ndis802_11WEPDisabled
 5) 设置OID_802_11_SSID=BSSIDInfo.SSID
 6) 等待NDISUIO_NOTIFICATION_MEDIA_CONNECT及NDISUIO_NOTIFICATION_MEDIA_DISCONNECT消息(本处返回NDISUIO_NOTIFICATION_MEDIA_CONNECT)
 7) 设置OID_802_11_BSSID=BSSIDInfo.BSSID
 8) 调用GetInterfaceInfo()得到Adapter信息,并调用IpRenewAddress()刷新IP

以上是连接一个无验证的AP过程,调用时都返回true,AP节点也可以刷出。但调用IOCTL_NDISUIO_NIC_STATISTICS检测网络时,返回空数据ptcDeviceName为空。而且AP也看不到接入。是我的过程不正确吗?还是有其它问题?请高手回答谢谢!

如果有代码可以参考,请发到我邮箱:samson107@163.com,或加我的QQ:190912165
[解决办法]

连接贴错了
http://www.cnblogs.com/Jade2009/archive/2009/02/23/1368201.html
[解决办法]
我也在学习这方面的

热点排行