EVC检测GPRS链接代码(转)
BOOL CRasMonitor::CheckConnectState()
{
DWORD m_con_cnt = 0;
RASCONN m_ras_conn;
m_ras_conn.dwSize = sizeof( RASCONN );
DWORD dwSize = sizeof( RASCONN );
DWORD m_ret = RasEnumConnections( &m_ras_conn, &dwSize, &m_con_cnt );
if ( (0 != m_ret) || (m_con_cnt <= 0) )
return FALSE;
RASCONNSTATUS m_ras_state;
memset( &m_ras_state, 0, sizeof( RASCONNSTATUS ) );
m_ras_state.dwSize = sizeof( RASCONNSTATUS );
if ( 0 != RasGetConnectStatus( m_ras_conn.hrasconn, &m_ras_state ) )
return FALSE;
return ( m_ras_state.rasconnstate == RASCS_Connected );
}
在WM5上工作很好很正常,在WM6上RasEnumConnections返回的值都是0
RasGetConnectStatus()是用来监测RAS拨号后的状态,要查GPRS连接的状态还是用connmgr.h里面提供的API好一些

浙公网安备 33010602011771号