MFC VC++ 编程 共享本地网络 创建无线AP EnableSharing出错 本帖最后由 u014378023 于 2014-06-12 17:43:47 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 DisableSharing 所有的网卡Sleep(1000)EnableSharing按照这个步骤试试 http://jingyan.baidu.com/article/e52e3615bec08340c60c5122.html再次尝试一下 我在执行这两个命令的时候已经枚举 DisableSharing 了所有网卡,并且尝试了关闭防火墙。HRESULT AddSharingNet(INetSharingManager* pNSM){ INetConnection * pNC = NULL; // fill this out for part 2 below INetSharingEveryConnectionCollection * pNSECC = NULL; HRESULT hr = pNSM->get_EnumEveryConnection (&pNSECC); if (!pNSECC) { wprintf (L"failed to get EveryConnectionCollection!\r\n"); } else { //enumerate connections IEnumVARIANT * pEV = NULL; IUnknown * pUnk = NULL; hr = pNSECC->get__NewEnum (&pUnk); if (pUnk) { hr = pUnk->QueryInterface(__uuidof(IEnumVARIANT), (void**)&pEV); pUnk->Release(); } if (pEV) { VARIANT v; VariantInit (&v); BOOL bFoundIt = FALSE; INetSharingConfiguration * pNSC = NULL; INetSharingConfiguration * pVWifiNSC = NULL; NETCON_PROPERTIES* pVWifi = NULL; while (S_OK == pEV->Next(1, &v, NULL)) { if (V_VT (&v) == VT_UNKNOWN) { V_UNKNOWN (&v)->QueryInterface (__uuidof(INetConnection), (void**)&pNC); if (pNC) { NETCON_PROPERTIES* pNP = NULL; pNC->GetProperties(&pNP);//获取网卡列表 setlocale(LC_ALL, "chs"); printf("--------------------------------------------------------\n"); wprintf(L"guidId--%d\n",pNP->guidId); wprintf(L"pszwName--%s\n",pNP->pszwName); wprintf(L"pszwDeviceName--%s\n",pNP->pszwDeviceName); wprintf(L"Status--%d\n",pNP->Status); wprintf(L"MediaType--%d\n",pNP->MediaType); wprintf(L"dwCharacter--%x\n",pNP->dwCharacter); wprintf(L"clsidThisObject--%d\n",pNP->clsidThisObject); wprintf(L"clsidUiObject--%d\n",pNP->clsidUiObject); printf("--------------------------------------------------------\n"); if(wcsstr(pNP->pszwDeviceName,(L"Virtual WiFi Miniport Adapter"))!= NULL)//相等返>0的值 //if(wcsstr(pNP->pszwDeviceName,(L"RTL8188"))!= NULL)//相等返>0的值 { pVWifi = pNP; printf("************************************************************\n"); wprintf(L"===>PRIVATE:%s\n",pNP->pszwDeviceName); printf("************************************************************\n"); hr = pNSM->get_INetSharingConfigurationForINetConnection(pNC, &pNSC); HRESULT hr_2 = pNSC->DisableSharing(); if(S_OK == hr_2) { printf("SUCCEED----Firewall:%x\n",hr); } else { printf("FAIL----Firewall:%x\n",hr); Sleep(3000); } hr = pNSC->EnableSharing(ICSSHARINGTYPE_PRIVATE);//ICSSHARINGTYPE_PUBLIC if(S_OK == hr) { printf("SUCCEED----PRIVATE:%x\n",hr); } else { printf("FAIL----PRIVATE:%x\n",hr); Sleep(3000); } pNSC->Release(); } } } } printf("\n\n\n\n"); printf("********************************************************\n"); } }return hr;} 嗯,这个也看过了,我会留心很感谢你的关注!!我现在把这问题放下搞MFC界面,过两天继续,这问题这周必须得完成的,我先记录下另外一个帖子。太感谢了,以为没人看了想不到! 找到原因了,是私有的固定IP被占用因此无法设置解决办法是检查各个无线网卡谁占用了。或者把所有网卡设置为自动获取IP再试试。 如何为控制台程序编写GUI操作界面 [注册表] <文件打开方式-始终用该程序打开>这个信息存放在注册标的什么位置? 老大们,帮我看看这是不是内存泄露还是其他什么消息?? windows编码的问题 线程间通信的问题 我是新手,刚学VC,有个题想请教! 麻烦给个思路吧 求助 郁闷----一个困惑了我好长时间的问题(我的DLL为什么不能release) 数据库问题:求救!特急!!!!!!!! VC划线旋转闪动问题 [请教]初学TBB,测试并行排序效率低
按照这个步骤试试
再次尝试一下
我在执行这两个命令的时候已经枚举 DisableSharing 了所有网卡,并且尝试了关闭防火墙。HRESULT AddSharingNet(INetSharingManager* pNSM)
{
INetConnection * pNC = NULL; // fill this out for part 2 below
INetSharingEveryConnectionCollection * pNSECC = NULL; HRESULT hr = pNSM->get_EnumEveryConnection (&pNSECC);
if (!pNSECC)
{
wprintf (L"failed to get EveryConnectionCollection!\r\n");
}
else
{
//enumerate connections
IEnumVARIANT * pEV = NULL;
IUnknown * pUnk = NULL; hr = pNSECC->get__NewEnum (&pUnk); if (pUnk)
{
hr = pUnk->QueryInterface(__uuidof(IEnumVARIANT), (void**)&pEV);
pUnk->Release();
}
if (pEV)
{
VARIANT v;
VariantInit (&v); BOOL bFoundIt = FALSE;
INetSharingConfiguration * pNSC = NULL;
INetSharingConfiguration * pVWifiNSC = NULL;
NETCON_PROPERTIES* pVWifi = NULL; while (S_OK == pEV->Next(1, &v, NULL))
{
if (V_VT (&v) == VT_UNKNOWN)
{
V_UNKNOWN (&v)->QueryInterface (__uuidof(INetConnection), (void**)&pNC);
if (pNC)
{
NETCON_PROPERTIES* pNP = NULL;
pNC->GetProperties(&pNP);//获取网卡列表
setlocale(LC_ALL, "chs"); printf("--------------------------------------------------------\n");
wprintf(L"guidId--%d\n",pNP->guidId);
wprintf(L"pszwName--%s\n",pNP->pszwName);
wprintf(L"pszwDeviceName--%s\n",pNP->pszwDeviceName);
wprintf(L"Status--%d\n",pNP->Status);
wprintf(L"MediaType--%d\n",pNP->MediaType);
wprintf(L"dwCharacter--%x\n",pNP->dwCharacter);
wprintf(L"clsidThisObject--%d\n",pNP->clsidThisObject);
wprintf(L"clsidUiObject--%d\n",pNP->clsidUiObject);
printf("--------------------------------------------------------\n"); if(wcsstr(pNP->pszwDeviceName,(L"Virtual WiFi Miniport Adapter"))!= NULL)//相等返>0的值
//if(wcsstr(pNP->pszwDeviceName,(L"RTL8188"))!= NULL)//相等返>0的值
{
pVWifi = pNP;
printf("************************************************************\n");
wprintf(L"===>PRIVATE:%s\n",pNP->pszwDeviceName);
printf("************************************************************\n");
hr = pNSM->get_INetSharingConfigurationForINetConnection(pNC, &pNSC); HRESULT hr_2 = pNSC->DisableSharing();
if(S_OK == hr_2)
{
printf("SUCCEED----Firewall:%x\n",hr);
}
else
{
printf("FAIL----Firewall:%x\n",hr);
Sleep(3000);
} hr = pNSC->EnableSharing(ICSSHARINGTYPE_PRIVATE);//ICSSHARINGTYPE_PUBLIC
if(S_OK == hr)
{
printf("SUCCEED----PRIVATE:%x\n",hr);
}
else
{
printf("FAIL----PRIVATE:%x\n",hr);
Sleep(3000);
}
pNSC->Release();
}
}
}
}
printf("\n\n\n\n");
printf("********************************************************\n");
}
}
return hr;
}
嗯,这个也看过了,我会留心
很感谢你的关注!!我现在把这问题放下搞MFC界面,过两天继续,这问题这周必须得完成的,我先记录下另外一个帖子。
太感谢了,以为没人看了想不到!