2011-07-21 68 views
1

我正在開發一個使用WPF的Windows應用程序。該程序在啓動時運行,應等待直到互聯網連接已連接,才能執行。通常互聯網連接將需要一些時間來連接。因此,現在我正在運行一個線程,以3秒鐘的時間間隔與服務器ping(如此)來觀察連接狀態。WPF啓動應用程序在互聯網連接連接後執行?

public bool CheckConnection() 
    { 



     try 
     { 

      //////////////check connction 
      System.Net.Sockets.TcpClient clnt = new System.Net.Sockets.TcpClient(UserConfig.configlist[2], Convert.ToInt32(UserConfig.configlist[3])); 
      clnt.Close(); 
      return true; 

     } 
     catch (Exception) 
     { 

      return false; 

     } 
    } 

如果狀態爲真,程序將被執行。有沒有這樣做的有效方法。任何想法請??????

+1

你可能會發現這個問題很有用http://stackoverflow.com/questions/843810/c-fastest-way-to-test-internet-connection –

回答

3

有一個非常有用的NetworkManager類與上CP,讓你檢查使用NetConnectionStatus枚舉網絡連接狀態......

你可以啓動一個計時器來檢查網絡連接每兩秒鐘if (NetworkManager.NetConnectionStatus != NetConnectionStatus.Connected){}並等待執行您的網絡相關代碼,直到網絡狀態更改爲Connected

+0

謝謝我是一個新角。我不知道那個刻度線被請求。再次感謝您的回答。 – hmlasnk

+0

沒問題,歡迎,這不是必需的,但這就是系統的工作原理...如果有人給你一個很好的答案,你給他們豎起大拇指...... –

相關問題