(转)检查网络是否连接正常

头文件     WinInet.h     
静态库     WinInet.lib   

BOOL   InternetGetConnectedState(   
          OUT   LPDWORD   lpdwFlags,   
          IN     DWORD   dwReserved   
);

DWORD   flags;//上网方式   
BOOL     m_bOnline;//是否在线   
m_bOnline=InternetGetConnectedState(&flags,0);   
if(m_bOnline)//在线   
{   
          switch(&flags)   
          {

          case   INTERNET_CONNECTION_MODEM   :   
                  AfxMessageBox("在线:拨号上网");   
                  break;   
          case   INTERNET_CONNECTION_LAN   :   
                  AfxMessageBox("在线:通过局域网");   
                  break;   
          case   INTERNET_CONNECTION_PROXY   :   
                  AfxMessageBox("在线:代理");   
                  break;   
          }   
          if(&flags==INTERNET_CONNECTION_MODEM_BUSY)   
                  AfxMessageBox("MODEM被其他非INTERNET连接占用");   
}   
else   
              AfxMessageBox("不在线");

另外MSDN上有更多的解释:

Parameters   
    
lpdwFlags     
Address   of   an   unsigned   long   integer   variable   where   the   connection   description   should   be   returned.   This   can   be   a   combination   of   the   following   values:     
INTERNET_CONNECTION_CONFIGURED     
Local   system   has   a   valid   connection   to   the   Internet,   but   it   may   or   may   not   be   currently   connected.     
INTERNET_CONNECTION_LAN     
Local   system   uses   a   local   area   network   to   connect   to   the   Internet.     
INTERNET_CONNECTION_MODEM     
Local   system   uses   a   modem   to   connect   to   the   Internet.     
INTERNET_CONNECTION_MODEM_BUSY     
No   longer   used.     
INTERNET_CONNECTION_OFFLINE     
Local   system   is   in   offline   mode.     
INTERNET_CONNECTION_PROXY     
Local   system   uses   a   proxy   server   to   connect   to   the   Internet.     
INTERNET_RAS_INSTALLED     
Local   system   has   RAS   installed.     
dwReserved     
Reserved.   Must   be   set   to   zero.     
Return   Value   
    
Returns   TRUE   if   there   is   an   Internet   connection,   or   FALSE   otherwise.   
    
Function   Information   
    
Windows   NT   Use   version   4.0.   Implemented   only   as   an   ANSI   function.     
Windows   Use   Windows   95   and   later.   Implemented   only   as   an   ANSI   function.     
Header   Wininet.h     
Import   library   Wininet.lib     
Minimum   availability   Internet   Explorer   4.0     
    
    
返回值中有个INTERNET_CONNECTION_OFFLINE   判断是不是离线的。


本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/primer_programer/archive/2007/12/26/1968244.aspx

你可能感兴趣的:((转)检查网络是否连接正常)