devdiv论坛的一个朋友共享的代码
CONNMGR_CONNECTION_DETAILED_STATUS *StatusBuffer;
CONNMGR_CONNECTION_DETAILED_STATUS *StatusBufferTemp;
DWORD pcbBufferSize = 0;
ConnMgrQueryDetailedStatus(NULL, &pcbBufferSize);
StatusBuffer = (CONNMGR_CONNECTION_DETAILED_STATUS *)new BYTE[pcbBufferSize];
ConnMgrQueryDetailedStatus(StatusBuffer, &pcbBufferSize);
StatusBufferTemp = StatusBuffer;
while(StatusBufferTemp != NULL)
{
if(StatusBufferTemp-〉dwConnectionStatus == CONNMGR_STATUS_CONNECTED)
{
if(StatusBufferTemp-〉dwType == CM_CONNTYPE_NIC)
{
switch(StatusBufferTemp-〉dwSubtype)
{
case CM_CONNSUBTYPE_NIC_WIFI :
MessageBox(_T("WIFI"));
break;
case CM_CONNSUBTYPE_NIC_ETHERNET :
break;
}
}
if(StatusBufferTemp-〉dwType == CM_CONNTYPE_CELLULAR)
{
switch(StatusBufferTemp-〉dwSubtype)
{
case CM_CONNSUBTYPE_CELLULAR_CSD :
break;
case CM_CONNSUBTYPE_CELLULAR_GPRS :
MessageBox(_T("GPRS"));
break;
case CM_CONNSUBTYPE_CELLULAR_1XRTT :
MessageBox(_T("1XRTT"));
break;
case CM_CONNSUBTYPE_CELLULAR_1XEVDO :
MessageBox(_T("1XEVDO"));
break;
case CM_CONNSUBTYPE_CELLULAR_1XEVDV :
break;
case CM_CONNSUBTYPE_CELLULAR_EDGE :
MessageBox(_T("EDGE"));
break;
case CM_CONNSUBTYPE_CELLULAR_UMTS :
break;
case CM_CONNSUBTYPE_CELLULAR_VOICE :
MessageBox(_T("VOICE"));
break;
case CM_CONNSUBTYPE_CELLULAR_PTT :
break;
//case CM_CONNSUBTYPE_CELLULAR_HSDPA :
// break;
}
}
if(StatusBufferTemp-〉dwType == CM_CONNTYPE_PROXY)
{
switch(StatusBufferTemp-〉dwSubtype)
{
case CM_CONNSUBTYPE_PROXY_WAP :
MessageBox(_T("WAP"));
break;
case CM_CONNSUBTYPE_PROXY_HTTP :
MessageBox(_T("HTTP"));
break;
}
}
if(StatusBufferTemp-〉dwType == CM_CONNTYPE_PC)
{
switch(StatusBufferTemp-〉dwSubtype)
{
case CM_CONNSUBTYPE_PC_DESKTOPPASSTHROUGH :
MessageBox(_T("ACTIVESYNC"));
break;
case CM_CONNSUBTYPE_PC_UNKNOWN :
break;
}
}
}
StatusBufferTemp = StatusBufferTemp-〉pNext;
}
delete StatusBuffer;