#include <iostream>
#include <WTypes.h>
#include <Sensapi.h>
using namespace std;
#pragma comment(lib,"Sensapi.lib")
bool isConnect()
{
DWORD dwFlags;
if(IsNetworkAlive(&dwFlags))
{
if(NETWORK_ALIVE_LAN == dwFlags)
{
cout<<"One or more LAN"<<endl;
}
else if(NETWORK_ALIVE_WAN == dwFlags)
{
cout<<"One or more RAS"<<endl;
}
else
{
}
return true;
}
else
{
DWORD dwError = GetLastError();
if(ERROR_SUCCESS == dwError)
{
cout<<"No Connection"<<endl;
}
else
{
cout<<"Connection Error"<<endl;
}
return false;
}
#include <WTypes.h>
#include <Sensapi.h>
using namespace std;
#pragma comment(lib,"Sensapi.lib")
bool isConnect()
{
DWORD dwFlags;
if(IsNetworkAlive(&dwFlags))
{
if(NETWORK_ALIVE_LAN == dwFlags)
{
cout<<"One or more LAN"<<endl;
}
else if(NETWORK_ALIVE_WAN == dwFlags)
{
cout<<"One or more RAS"<<endl;
}
else
{
}
return true;
}
else
{
DWORD dwError = GetLastError();
if(ERROR_SUCCESS == dwError)
{
cout<<"No Connection"<<endl;
}
else
{
cout<<"Connection Error"<<endl;
}
return false;
}
}
// *****************************/// 三种方法整理。
bool isConnect; DWORD dw; isConnect = ::IsNetworkAlive(&dw); if(isConnect) cout << "IsNetworkAlive连接" <<endl; else cout << "IsNetworkAlive未连接" <<endl; cout<< "---------------------------------" <<endl; //dw和dw2标识,可判断本机是以什么方式连接网络。如:代理、拨号等 DWORD dw2; bool ret = InternetGetConnectedState(&dw2, 0); if (ret) cout << "InternetGetConnectedState连接" <<endl; else cout << "InternetGetConnectedState未连接" <<endl; cout<< "**********************************" <<endl; //FLAG_ICC_FORCE_CONNECTION不可少;当该网络连接地址链接不通时,该API需ping一段时间(1~2分钟) bool bConnected = InternetCheckConnection(_T("http://www.baidu.com"), FLAG_ICC_FORCE_CONNECTION, 0); if (bConnected) cout << "InternetCheckConnection连接" <<endl; else cout << "InternetCheckConnection未连接" <<endl; cout<< "%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%" <<endl;