请问wince6.0wifi连接- 如何删除wifi首选网络?

tangcheng_ok 2010-11-04 02:05:21
//////////////////////////////////////////////////////////////////////////
// adding to the [Preferred Networks]
// [Preferred Networks] is a list of SSIDs in preference order.
// WZC continuously scans available SSIDs and attempt to connect to the most preferable SSID.
void AddToPreferredNetworkList(LPTSTR pszWiFiCard, PWZC_WLAN_CONFIG pwzcConfig, LPTSTR pszSSID)
{
DWORD dwOutFlags = 0;
INTF_ENTRY_EX Intf;
DWORD dwStatus;
WZC_802_11_CONFIG_LIST *pConfigList;
WZC_802_11_CONFIG_LIST *pNewConfigList;
DWORD dwDataLen;
ULONG uiNumberOfItems;
UINT i;

memset(&Intf, 0x00, sizeof(INTF_ENTRY_EX));
Intf.wszGuid = pszWiFiCard;

dwStatus = WZCQueryInterfaceEx(
NULL,
INTF_ALL,
&Intf,
&dwOutFlags);
if(dwStatus)
{
//DEBUGMSG(ZONE_ERROR, (TEXT("Ethman: AddToPreferredNetworkList: WZCQueryInterfaceEx() error dwStatus=0x%0X, dwOutFlags=0x%0X\r\n"), dwStatus, dwOutFlags));
WZCDeleteIntfObjEx(&Intf);
return;
}

pConfigList = (PWZC_802_11_CONFIG_LIST)Intf.rdStSSIDList.pData;

if(!pConfigList) // empty [Preferred Networks] list case
{
dwDataLen = sizeof(WZC_802_11_CONFIG_LIST);
pNewConfigList = (WZC_802_11_CONFIG_LIST *)LocalAlloc(LPTR, dwDataLen);
pNewConfigList->NumberOfItems = 1;
pNewConfigList->Index = 0;
memcpy(pNewConfigList->Config, pwzcConfig, sizeof(WZC_WLAN_CONFIG));
Intf.rdStSSIDList.pData = (BYTE*)pNewConfigList;
Intf.rdStSSIDList.dwDataLen = dwDataLen;
}
else
{
uiNumberOfItems = pConfigList->NumberOfItems;
for(i=0; i<uiNumberOfItems; i++)
{
if(memcmp(&(pwzcConfig->Ssid), &pConfigList->Config[i].Ssid, sizeof(NDIS_802_11_SSID)) == 0)
{
//DEBUGMSG(ZONE_VERBOSE, (TEXT("Ethman: AddToPreferredNetworkList: The SSID [%s] in registry is already in the [Preferred Networks] list.\r\n"), pszSSID));
WZCDeleteIntfObjEx(&Intf);
return;
}
}
//DEBUGMSG(ZONE_VERBOSE, (TEXT("Ethman: AddToPreferredNetworkList: SSID List has [%d] entries.\r\n"), uiNumberOfItems));
//DEBUGMSG(ZONE_VERBOSE, (TEXT("Ethman: AddToPreferredNetworkList: Adding %s to the top of [Preferred Networks]\r\n"), pszSSID)); // this will be the most preferable SSID

dwDataLen = sizeof(WZC_802_11_CONFIG_LIST) + (uiNumberOfItems+1)*sizeof(WZC_WLAN_CONFIG);
pNewConfigList = (WZC_802_11_CONFIG_LIST *)LocalAlloc(LPTR, dwDataLen);
pNewConfigList->NumberOfItems = uiNumberOfItems + 1;
pNewConfigList->Index = 0;

memcpy(pNewConfigList->Config, pwzcConfig, sizeof(WZC_WLAN_CONFIG));
if(pConfigList->NumberOfItems)
{
pNewConfigList->Index = pConfigList->Index;
memcpy(pNewConfigList->Config+1, pConfigList->Config, (uiNumberOfItems)*sizeof(WZC_WLAN_CONFIG));
LocalFree(pConfigList);
pConfigList = NULL;
}

Intf.rdStSSIDList.pData = (BYTE*)pNewConfigList;
Intf.rdStSSIDList.dwDataLen = dwDataLen;
}

dwStatus = WZCSetInterfaceEx(NULL, INTF_PREFLIST, &Intf, &dwOutFlags);
//if(dwStatus)
// DEBUGMSG(ZONE_VERBOSE, (TEXT("Ethman: AddToPreferredNetworkList: WZCSetInterfaceEx() error dwStatus=0x%0X, dwOutFlags=0x%0X\r\n"), dwStatus, dwOutFlags));

WZCDeleteIntfObjEx(&Intf);
}

这是添加到首选网络的代码,请问如何通过代码删除首选网络呢?谢谢
...全文
565 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
srt266 2011-01-11
  • 打赏
  • 举报
回复
请问下楼主,删除实现了吗? 我在xp下要实现删除,然后再还原,请给点思路吧,谢谢
tangcheng_ok 2011-01-11
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 srt266 的回复:]

请问下楼主,删除实现了吗? 我在xp下要实现删除,然后再还原,请给点思路吧,谢谢
[/Quote]

没去弄了,现在搞Android了。我的做法已经在上面说了。抱歉~~
tangcheng_ok 2010-11-23
  • 打赏
  • 举报
回复
帖子发了很久了,很久都不来csdn了。

关于这个问题,本来是自己写了一个WiFI连接的ap。后来发现问题多多,最后调出了WinCE下默认的Wifi设置对话框,本以为很简单,在MFC中可以通过应用的name获取应用程序的句柄,通过句柄然后将设置对话框弹出来。但是没有name。用spy++ 查看的时候是“NO Name”,没办法。最后通过更改netui下的源码,在打开Wifi应用的时候发送一个广播消息(消息中包含WIFI设置对话框的消息),应用程序接收到广播消息,然后调出设置对话框。这个问题折腾了一两天。呵呵~~
tangcheng_ok 2010-11-05
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 jw212 的回复:]
参见OnWZCPrefDelete函数
netui下面的Wzcui.c
[/Quote]
我找到那个函数了,很多东西,研究下怎么用先...
jw212 2010-11-04
  • 打赏
  • 举报
回复
参见OnWZCPrefDelete函数
netui下面的Wzcui.c
tangcheng_ok 2010-11-04
  • 打赏
  • 举报
回复
删除没用~~~


怎么没人呢?
tangcheng_ok 2010-11-04
  • 打赏
  • 举报
回复
我在注册表中找到了相关的项[HKEY_CURRENT_USER\Comm\EAPOL\Config] 删除注册表看看

19,504

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 嵌入开发(WinCE)
社区管理员
  • 嵌入开发(WinCE)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧