青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

VC獲得本機網絡連接狀態

  1. //本機網絡連接類型(成功)  
  2. #define  NET_TYPE_RAS_DIAL_UP_CONNECT_NET           0x01    //上網類型:采用RAS撥號連接上網    0x01  
  3. #define  NET_TYPE_LAN_CONNECT_NET                   0x02    //上網類型:采用網卡通過局域網上網 0x02  
  4. #define  NET_TYPE_PROXY_CONNECT_NET                 0x04    //上網類型:使用代理服務器上網     0x04  
  5. #define  NET_TYPE_RAS_INSTALL                       0x10    //RAS安裝                        0x10  
  6.   
  7. //本機網絡連接(失敗)  
  8. #define  NET_TYPE_NO_CONNECT_NET                    0x41    //未連接到網絡  
  9. #define  NET_STATE_VALID_CONNECT_NOCONNECT_NET      0x40    //可以聯網,但當前不可用    0x40  
  10. #define  NET_STATE_MODEM_BUSY                       0x08    //調制解調器 繁忙           0x08  
  11. #define  NET_STATE_SYSTEM_OFFLINE_MODE              0x20    //系統脫機模式              0x20  
  12.   
  13. CheckNet()  
  14. {  
  15. if(!InternetGetConnectedState(&dwOnline, 0))  
  16.     {  
  17.         if (dwOnline & INTERNET_CONNECTION_CONFIGURED )  
  18.         {  
  19.             return NET_STATE_VALID_CONNECT_NOCONNECT_NET;  
  20.         }  
  21.         if (dwOnline & INTERNET_CONNECTION_MODEM_BUSY)  
  22.         {  
  23.             return NET_STATE_MODEM_BUSY;  
  24.         }  
  25.         if (dwOnline & INTERNET_CONNECTION_OFFLINE)  
  26.         {  
  27.             return NET_STATE_SYSTEM_OFFLINE_MODE;  
  28.         }  
  29.   
  30.         return NET_TYPE_NO_CONNECT_NET;  
  31.     }  
  32.   
  33.     if ( dwOnline& INTERNET_CONNECTION_MODEM )      //上網類型:采用RAS撥號連接上網  
  34.     {  
  35.         return  NET_TYPE_RAS_DIAL_UP_CONNECT_NET;     
  36.     }  
  37.   
  38.     else if ( dwOnline&INTERNET_CONNECTION_LAN  )  //上網類型:采用網卡通過局域網上網  
  39.     {  
  40.         return NET_TYPE_LAN_CONNECT_NET;  
  41.     }  
  42.   
  43.     else if ( dwOnline& INTERNET_CONNECTION_PROXY) //在線:代理  
  44.     {  
  45.         return NET_TYPE_PROXY_CONNECT_NET;  
  46.     }  
  47.   
  48.     else if ( dwOnline&INTERNET_CONNECTION_MODEM_BUSY ) //MODEM被其他非INTERNET連接占用  
  49.     {  
  50.         return NET_TYPE_RAS_INSTALL;  
  51.     }  
  52. }  

 

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的)

微軟文檔:
http://www.microsoft.com/china/technet/security/topics/serversecurity/tcg/tcgch07n.mspx

System Event Notification

System Event Notification (SENS) 服務監視并跟蹤計算機事件(如 Windows 登錄網絡和電源事件)。它還將這些事件通知給 COM+ 事件系統 訂閱者。在 Windows XP 和 Windows Server 2003 上默認安裝并自動運行此服務。

如果 System Event Notification 服務停止,COM+ Event System 服務的訂閱者將不會接收到事件通知,并且會發生以下問題:

Win32 API IsNetworkAlive() 和 IsDestinationReachable() 將無法運行。這些 API 大多在便攜式計算機的移動應用程序中使用。

ISens* 接口將無法使用。SENS 登錄/注銷通知將失敗。

SyncMgr (mobsync.exe) 將無法正常運行。SyncMgr 依賴于連接信息,以及來自 SENS 的網絡連接/斷開、登錄/注銷通知。

COM+ EventSystem 試圖向 SENS 通知某些事件時將失敗。

Volume Shadow Copy 服務將不能正常加載,這將導致 Windows 備份 API 失敗。

  1. //  
  2. #include "stdafx.h"  
  3. #include "test.h"  
  4. #include <Wininet.h>  
  5. #include <Sensapi.h>  
  6.   
  7. #ifdef _DEBUG  
  8. #define new DEBUG_NEW  
  9. #undef THIS_FILE  
  10. static char THIS_FILE[] = __FILE__;  
  11. #endif  
  12.   
  13. /////////////////////////////////////////////////////////////////////////////  
  14. // The one and only application object  
  15.   
  16. CWinApp theApp;  
  17.   
  18. using namespace std;  
  19.   
  20. void Fun_InternetGetConnectedState()  
  21. {  
  22.     
  23. //#define INTERNET_CONNECTION_MODEM           1  
  24. //#define INTERNET_CONNECTION_LAN             2  
  25. //#define INTERNET_CONNECTION_PROXY           4  
  26. //#define INTERNET_CONNECTION_MODEM_BUSY      8  
  27.     
  28. DWORD   flags;//上網方式   
  29. BOOL   m_bOnline=TRUE;//是否在線    
  30.   
  31. m_bOnline=InternetGetConnectedState(&flags,0);     
  32. if(m_bOnline)//在線     
  33. {     
  34.    if ((flags & INTERNET_CONNECTION_MODEM) ==INTERNET_CONNECTION_MODEM)  
  35.    {  
  36.     cout<<"在線:撥號上網\n";  
  37.    }  
  38.    if ((flags & INTERNET_CONNECTION_LAN) ==INTERNET_CONNECTION_LAN)  
  39.    {  
  40.     cout<<"在線:通過局域網\n";  
  41.    }  
  42.    if ((flags & INTERNET_CONNECTION_PROXY) ==INTERNET_CONNECTION_PROXY)  
  43.    {  
  44.     cout<<"在線:代理\n";  
  45.    }  
  46.    if ((flags & INTERNET_CONNECTION_MODEM_BUSY) ==INTERNET_CONNECTION_MODEM_BUSY)  
  47.    {  
  48.     cout<<"MODEM被其他非INTERNET連接占用\n";  
  49.    }  
  50. }  
  51. else  
  52.    cout<<"不在線\n";  
  53. }  
  54.   
  55. void Fun_IsNetworkAlive()  
  56. {  
  57.     
  58. DWORD   flags;//上網方式   
  59. BOOL   m_bOnline=TRUE;//是否在線    
  60.   
  61. m_bOnline=IsNetworkAlive(&flags);     
  62. if(m_bOnline)//在線     
  63. {     
  64.    if ((flags & NETWORK_ALIVE_LAN) ==NETWORK_ALIVE_LAN)  
  65.    {  
  66.     cout<<"在線:NETWORK_ALIVE_LAN\n";  
  67.    }  
  68.    if ((flags & NETWORK_ALIVE_WAN) ==NETWORK_ALIVE_WAN)  
  69.    {  
  70.     cout<<"在線:NETWORK_ALIVE_WAN\n";  
  71.    }  
  72.    if ((flags & NETWORK_ALIVE_AOL) ==NETWORK_ALIVE_AOL)  
  73.    {  
  74.     cout<<"在線:NETWORK_ALIVE_AOL\n";  
  75.    }  
  76. }  
  77. else  
  78.    cout<<"不在線\n";  
  79. }  
  80.   
  81. int _tmain(int argc, TCHAR* argv[], TCHAR* envp[])  
  82. {  
  83. int nRetCode = 0;  
  84.   
  85. // initialize MFC and print and error on failure  
  86. if (!AfxWinInit(::GetModuleHandle(NULL), NULL, ::GetCommandLine(), 0))  
  87. {  
  88.    // TODO: change error code to suit your needs  
  89.    cerr << _T("Fatal Error: MFC initialization failed") << endl;  
  90.    nRetCode = 1;  
  91. }  
  92. else  
  93. {  
  94.    // TODO: code your application's behavior here.  
  95. //   CString strHello;  
  96. //   strHello.LoadString(IDS_HELLO);  
  97. //   cout << (LPCTSTR)strHello << endl;  
  98.    int i=0;  
  99.    while (TRUE)  
  100.    {  
  101.     cout << "請選擇測試的方式:\n"  
  102.      << "1. InternetGetConnectedState\n"  
  103.      << "2. IsNetworkAlive"  
  104.      << endl;  
  105.     cin >> i;  
  106.     switch(i)   
  107.     {  
  108.     case 1:  
  109.      Fun_InternetGetConnectedState();  
  110.      break;  
  111.     case 2:  
  112.      Fun_IsNetworkAlive();  
  113.      break;  
  114.     default:  
  115.      cout << "錯誤!\n";  
  116.     }  
  117.     cout << endl;  
  118.    }  
  119. }  
  120.   
  121.   return nRetCode;  

 

posted on 2010-12-02 09:07 wrh 閱讀(9532) 評論(0)  編輯 收藏 引用


只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


導航

<2008年4月>
303112345
6789101112
13141516171819
20212223242526
27282930123
45678910

統計

常用鏈接

留言簿(19)

隨筆檔案

文章檔案

收藏夾

搜索

最新評論

閱讀排行榜

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            嫩模写真一区二区三区三州| 性色一区二区| 99re66热这里只有精品3直播| 欧美激情免费观看| 久久久久久久久伊人| 亚洲欧美日韩国产一区二区三区| 日韩午夜电影在线观看| 亚洲精品在线视频| 一区二区三区久久| 亚洲欧美区自拍先锋| 久久狠狠久久综合桃花| 久久夜色精品国产欧美乱| 麻豆精品在线视频| 欧美三日本三级少妇三99| 国产精品日韩专区| 国模叶桐国产精品一区| 亚洲精品三级| 久久国产精品免费一区| 欧美成人精品在线观看| 日韩视频免费在线观看| 亚洲欧美日韩一区二区三区在线观看| 午夜激情综合网| 老司机午夜精品| 国产伦精品一区| 亚洲毛片一区| 美玉足脚交一区二区三区图片| 日韩视频不卡| 免费不卡欧美自拍视频| 国产欧美亚洲精品| 亚洲一二三四区| 亚洲三级视频| 久久五月婷婷丁香社区| 国产精品一区二区欧美| 亚洲女人小视频在线观看| 久久久久久一区| 99av国产精品欲麻豆| 亚洲国产高清高潮精品美女| 国产美女精品一区二区三区| 国产精品免费观看在线| 久久精品理论片| 国产精品一区二区在线观看不卡| 欧美大片在线看| 亚洲免费视频网站| 亚洲欧美日韩久久精品| 亚洲国产精品久久久久秋霞不卡| 一区二区三区高清不卡| 亚洲欧洲日韩女同| 久久天天躁狠狠躁夜夜av| 欧美中文字幕精品| 国产精品亚洲第一区在线暖暖韩国 | 亚洲男人第一网站| 欧美18av| 亚洲人成在线观看网站高清| 亚洲第一精品电影| 欧美成人免费全部| 亚洲国产精品一区在线观看不卡 | 欧美在线黄色| 国产精品草莓在线免费观看| 9久草视频在线视频精品| 亚洲制服丝袜在线| 国产色综合天天综合网| 欧美一区二区在线播放| 欧美激情aaaa| 亚洲欧美乱综合| 一区二区视频免费在线观看| 亚洲永久免费av| 国产精品一香蕉国产线看观看| 亚洲欧美美女| 欧美激情国产精品| 欧美一区2区视频在线观看| 国产真实乱子伦精品视频| 欧美激情精品久久久| 亚洲一区在线视频| 美女啪啪无遮挡免费久久网站| 亚洲免费观看在线观看| 欧美四级在线| 欧美国产日韩精品| 欧美在线网站| 亚洲一本视频| 99热精品在线观看| 另类人畜视频在线| 午夜伦理片一区| 在线中文字幕一区| 日韩视频免费大全中文字幕| 国产一区二区| 国产综合色精品一区二区三区| 欧美日韩国产精品一卡| 欧美不卡福利| 欧美91福利在线观看| 久久久久久亚洲精品杨幂换脸| 亚洲一区一卡| 欧美一区二区视频网站| 亚洲精品免费在线播放| 欧美成人精品高清在线播放| 久久久久国色av免费观看性色| 亚洲第一免费播放区| 国产小视频国产精品| 国产日韩精品在线观看| 国产精品男gay被猛男狂揉视频| 欧美一区二区三区四区视频| 亚洲毛片在线| 久久婷婷激情| 久久久久高清| 久久久国产一区二区| 国产精品自在线| 亚洲免费成人| 亚洲伦理在线| 日韩一区二区精品在线观看| 亚洲国产精品综合| 亚洲日本中文字幕免费在线不卡| 久久免费一区| 欧美a级一区二区| 亚洲黑丝在线| 亚洲婷婷免费| 久久久噜噜噜久噜久久| 久久久亚洲一区| 欧美mv日韩mv国产网站app| 欧美成人中文字幕| 国产精品久久二区| 狠狠色狠色综合曰曰| 亚洲免费av片| 欧美在线视频二区| 亚洲区中文字幕| 亚洲欧美日韩高清| 久久久久国产精品人| 欧美激情国产精品| 国产视频在线观看一区二区三区 | 久久久久久国产精品mv| 老司机午夜精品视频| 这里只有精品丝袜| 你懂的视频欧美| 国产人成一区二区三区影院| 好看的亚洲午夜视频在线| 日韩一区二区久久| 美国三级日本三级久久99| 亚洲视频一区在线| 麻豆乱码国产一区二区三区| 国产精品黄视频| 中文日韩在线| 一区二区三区欧美亚洲| 久久天天狠狠| 激情欧美一区二区三区| 久久久久久久999| 久久免费99精品久久久久久| 欧美日韩天天操| 亚洲精品在线观看免费| 欧美99在线视频观看| 久久综合网hezyo| 国内精品一区二区| 免费91麻豆精品国产自产在线观看| 久久久久成人精品免费播放动漫| 国产亚洲女人久久久久毛片| 久久精品国产视频| 久久影音先锋| 亚洲午夜影视影院在线观看| 亚洲桃花岛网站| 国产亚洲视频在线| 亚洲激情二区| 国产女人18毛片水18精品| 久久久久国产一区二区三区四区 | 欧美日韩在线三区| 欧美一区=区| 欧美精品自拍| 久久精品首页| 欧美日韩黄视频| 久久色在线观看| 国产精品v欧美精品v日韩| 久久久999精品| 欧美色一级片| 最新69国产成人精品视频免费| 国产午夜精品全部视频播放 | 亚洲一区网站| 欧美区亚洲区| 亚洲在线观看视频网站| 久久久7777| 一本久道久久综合狠狠爱| 欧美区一区二| 午夜精品视频在线| 你懂的亚洲视频| 亚洲另类自拍| 噜噜噜躁狠狠躁狠狠精品视频| 西瓜成人精品人成网站| 国产精品婷婷| 午夜久久资源| 国产精品爱久久久久久久| 欧美大胆a视频| 亚洲精品久久久久久久久久久久久 | 亚洲六月丁香色婷婷综合久久| 亚洲永久字幕| 亚洲网址在线| 国产精品久久久久久久午夜片| 在线一区二区日韩| 久久国产免费看| 在线不卡中文字幕| 欧美日韩一区三区四区| 一本色道久久综合亚洲精品不卡| 亚洲视频久久| 黄色成人av网站| 欧美日韩一区二区三区四区在线观看| 亚洲图片激情小说|