WlanGetAvailableNetworkList问题 [英] WlanGetAvailableNetworkList issue
问题描述
我正在尝试在我的代码中使用WlanGetAvailableNetworkList来获取netwroks列表。但由于某种原因,它只获得一个可用的网络。
I am trying to use WlanGetAvailableNetworkList in my code to get the list of netwroks. however for some reason it gets only one of the available network.
int main(int argc,char * argv [])
{
HANDLE hClient;
DWORD dwNegotiatedVersion = 0;
PWLAN_INTERFACE_INFO_LIST pIntfList = NULL;
PWLAN_AVAILABLE_NETWORK_LIST nwList;
DWORD结果= 0;
WlanSession = WlanOpenHandle(WLAN_API_VERSION,NULL,& dwNegotiatedVersion,
& hClient);
WlanEnumInterfaces(hClient,NULL,& pIntfList);
result = WlanScan(hClient,& pIntfList-> InterfaceInfo [0] .InterfaceGuid,NULL,NULL,NULL);
WlanGetAvailableNetworkList(hClient,& pIntfList-> InterfaceInfo [0] .InterfaceGuid,WLAN_AVAILABLE_NETWORK_INCLUDE_ALL_MANUAL_HIDDEN_PROFILES,NULL, List);
返回0;
}
int main (int argc, char *argv[])
{
HANDLE hClient;
DWORD dwNegotiatedVersion = 0;
PWLAN_INTERFACE_INFO_LIST pIntfList = NULL;
PWLAN_AVAILABLE_NETWORK_LIST nwList;
DWORD result = 0;
WlanSession = WlanOpenHandle( WLAN_API_VERSION, NULL, &dwNegotiatedVersion,
&hClient );
WlanEnumInterfaces(hClient, NULL, &pIntfList);
result = WlanScan(hClient, &pIntfList->InterfaceInfo[0].InterfaceGuid, NULL, NULL, NULL );
WlanGetAvailableNetworkList (hClient,&pIntfList->InterfaceInfo[0].InterfaceGuid,WLAN_AVAILABLE_NETWORK_INCLUDE_ALL_MANUAL_HIDDEN_PROFILES,NULL,&nwList);
return 0;
}
有人可以告诉我这有什么不对吗?
Can somebody tell me whats wrong with this?
以下是网络的屏幕截图
推荐答案
我使用的是Windows Xp SP 3
I am using windows Xp SP 3
我确实浏览了wlanapi.h文件。它似乎一次只能扫描一个网络:
I did go through the wlanapi.h file. It seems that it can scan only one network at a time:
typedef struct _WLAN_AVAILABLE_NETWORK_LIST {
  ;  DWORD dwNumberOfItems;
DWORD dwIndex;
#ifdef __midl
[unique,size_is(dwNumberOfItems)] WLAN_AVAILABLE_NETWORK网络[*];
#else
WLAN_AVAILABLE_NETWORK网络[1];
#endif
} WLAN_AVAILABLE_NETWORK_LIST,* PWLAN_AVAILABLE_NETWORK_LIST;
typedef struct _WLAN_AVAILABLE_NETWORK_LIST {
DWORD dwNumberOfItems;
DWORD dwIndex;
#ifdef __midl
[unique, size_is(dwNumberOfItems)] WLAN_AVAILABLE_NETWORK Network[*];
#else
WLAN_AVAILABLE_NETWORK Network[1];
#endif
} WLAN_AVAILABLE_NETWORK_LIST, *PWLAN_AVAILABLE_NETWORK_LIST;
有没有解决这个问题?
这篇关于WlanGetAvailableNetworkList问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!