/本機網路連線型別(成功)
#define net_type_ras_dial_up_connect_net 0x01 //上網型別:採用ras撥號連線上網 0x01
#define net_type_lan_connect_net 0x02 //上網型別:採用網**過區域網上網 0x02
#define net_type_proxy_connect_net 0x04 //上網型別:使用**伺服器上網 0x04
#define net_type_ras_install 0x10 //ras安裝 0x10
//本機網路連線(失敗)
#define net_type_no_connect_net 0x41 //未連線到網路
#define net_state_valid_connect_noconnect_net 0x40 //可以聯網,但當前不可用 0x40
#define net_state_modem_busy 0x08 //數據機 繁忙 0x08
#define net_state_system_offline_mode 0x20 //系統離線模式 0x20
checknet()
if (dwonline & internet_connection_modem_busy)
if (dwonline & internet_connection_offline)
return net_type_no_connect_net;
} if ( dwonline& internet_connection_modem ) //上網型別:採用ras撥號連線上網
else if ( dwonline&internet_connection_lan ) //上網型別:採用網**過區域網上網
else if ( dwonline&internet_connection_modem_busy ) //modem被其他非internet連線占用
} msdn中定義了7種引數型別,但實際中wininet.h標頭檔案中只對四種型別的值進行了定義
7種型別:
internet_connection_lan 區域網
internet_connection_modem 撥號上網
internet_connection_proxy **
internet_connection_modem_busy **被占用
internet_connection_configured 雖然可以聯網,但當前不可用
internet_connection_offline 離線
internet_ras_installed ras安裝
wininet.h標頭檔案中值定義:
// flags for internetgetconnectedstate and ex
#define internet_connection_modem 0x01
#define internet_connection_lan 0x02
#define internet_connection_proxy 0x04
#define internet_connection_modem_busy 0x08 /* no longer used */
#define internet_ras_installed 0x10
#define internet_connection_offline 0x20
#define internet_connection_configured 0x40
internetgetconnectedstate():對網路狀況不能及時反應
isnetworkalive():可以及時反應網路連通情況,但是需要服務system event notification支援(系統預設自動啟動該服務)。使用該函式,需要安裝最新的sdk(如.net的)
微軟文件:
system event notification
••isens* 介面將無法使用。sens 登入/登出通知將失敗。
•syncmgr (mobsync.exe) 將無法正常執行。syncmgr 依賴於連線資訊,以及來自 sens 的網路連線/斷開、登入/登出通知。
•com+ eventsystem 試圖向 sens 通知某些事件時將失敗。
•volume shadow copy
view plain
copy to clipboard
print?
//
#include "stdafx.h"
#include "test.h"
#include
#include
#ifdef _debug
#define new debug_new
#undef this_file
static char this_file = __file__;
#endif
/ using namespace std;
void fun_internetgetconnectedstate()
if ((flags & internet_connection_lan) ==internet_connection_lan)
if ((flags & internet_connection_proxy) ==internet_connection_proxy)
if ((flags & internet_connection_modem_busy) ==internet_connection_modem_busy)
} else
} void fun_isnetworkalive()
if ((flags & network_alive_wan) ==network_alive_wan)
if ((flags & network_alive_aol) ==network_alive_aol)
} else
} int _tmain(int argc, tchar* argv, tchar* envp)
else
cout << endl;
} }
return nretcode; }
VC獲得本機網路連線狀態
msdn中定義了7種引數型別,但實際中wininet.h標頭檔案中只對四種型別的值進行了定義 7種型別 internet connection lan 區域網 internet connection modem 撥號上網 internet connection proxy internet conn...
Android網路連線狀態
實習告一段落,回校準備畢業答辯,享受最後的大學生活。開發android應用程式,在需要進行連線網路時,如果沒有可用的網路連線,提醒手機使用者沒有可用的連連線,讓使用者有比較好的體驗。驗證 如下 1 首先獲得所有的網路連線manager.getallnetworkinfo 2 在迴圈判斷網路連線是否可...
Android 檢測網路連線狀態
檢測是否接入網際網路 connectivitymanager cm connectivitymanager context.getsystemservice context.connectivity service networkinfo activenetwork cm.getactivenetw...