我使用的环境是VC++6.0,在windows xp sp2下动态加载wzcsapi.dll
然后使用WZCSetInterface函数,与一个开发式AP建立连接,调用这个函数后能建立连接也能上网,但系统托盘下的无线网络图片没有显示连上,但可以上几分钟的网.然后就断线了,
WZC_WLAN_CONFIG p1的信息是:
p1.Length=sizoef(WZC_WLAN_CONFIG);//
p1.dwCtlFlags=0;
p1.Privacy=Ndis802_11WEPDisabled;
p1.AuthenticationMode=Ndis802_11AuthModeOpen;
p1.InfrastructureMode=Ndis802_11Infrastructure;
p1.Ssid.SsidLength=5;
BYTE ssidl[]="dlink";//因为做测试,所以事先已经知道了无线AP的SSID
for(int li=0;li<p1.Ssid.SsidLength;li++)
p1.Ssid.Ssid
=ssidl
;
INTF_ENTRY Intf;
DWORD dwOutFlags=0;
memset(&Intf,0,sizeof(Intf));
Intf.wszGuid=pIntfsTable.pIntfs->wszGuid;
DWORD dwDataLen = p1.Length+8;
WZC_802_11_CONFIG_LIST *pNewConfigList = (WZC_802_11_CONFIG_LIST *)LocalAlloc(LPTR, dwDataLen);
pNewConfigList->NumberOfItems = 1;
pNewConfigList->Index = 0;
memcpy(pNewConfigList->Config, &p1, sizeof(p1));
Intf.rdCtrlData.pData = (BYTE*)pNewConfigList;
Intf.rdCtrlData.dwDataLen = dwDataLen;
Intf.ulMediaType=1;
然后就调用WZCSetInterface(NULL,INTF_PREFLIST,&Intf,&dwOutFlags);
返回值是成功.