2012-11-29 46 views
5

मैं यह पता लगाने की कोशिश कर रहा हूं कि मैं किस प्रकार का नेटवर्क कनेक्शन से जुड़ा हूं। क्या यह वाईफाई या 3 जी है? सी # जीत फ़ॉर्म .net 2.0 या 4.0 का उपयोग कर ऐसा करने का कोई तरीका है?क्या यह पता लगाने का कोई तरीका है कि मैं किस प्रकार का कनेक्शन उपयोग कर रहा हूं? वाईफाई, 3 जी या ईथरनेट?

 foreach (NetworkInterface adapter in adapters) 
     { 
      if (adapter.OperationalStatus == OperationalStatus.Up) 
      { 
       if (adapter.NetworkInterfaceType == NetworkInterfaceType.Wireless80211) 
       { 
        lblNetworkType.Text = "you are using WiFi"; 
        break; 
       } 
       else if (adapter.NetworkInterfaceType == NetworkInterfaceType.Ppp) 
       { 
        lblNetworkType.Text = "you are using 3G or ADSL or Dialup"; 
        break; 
       } 
       else if (adapter.NetworkInterfaceType == NetworkInterfaceType.Ethernet) 
       { 
        lblNetworkType.Text = "you are using Ethernet"; 
        break; 
       } 
      } 
     } 
+0

मुझे लगता है कि आपको enums [NetworkInterfaceType] (http://msdn.microsoft.com/en-us/library/system.net.networkinformation.networkinterfacetype%28v=vs.100%29.aspx के साथ जांच करनी होगी) जब आप 'NetworkInterface.GetAllNetworkInterfaces() ' – V4Vendetta

+1

करते हैं, लेकिन यह 3 जी कनेक्शन के बारे में वास्तव में स्पष्ट नहीं है। – Arrabi

उत्तर

3

दुर्भाग्यवश ऐसा करने के लिए 'साफ' तरीका नहीं है। एक 3 जी कनेक्शन एडीएसएल या डायलअप कनेक्शन के समान दिखाई देगा (नेटवर्क प्रकार पीपीपी होने के साथ)।

यदि आप निश्चित हैं कि आप केवल वाईफ़ाई/3 जी पर होंगे, तो आप GetAllNetworkInterfaces द्वारा प्रदान की गई NetworkInterface कक्षा में जानकारी की जांच कर सकते हैं और इंटरफ़ेस प्रकार पीपीपी होने पर इसे 3 जी के रूप में पेश कर सकते हैं। लेकिन जैसा कि मैंने उल्लेख किया है यह अन्य प्रकार के मॉडेम कनेक्शन के लिए समान है।

संपादित करें: आपके पास डिवाइस नाम या विवरण में "3 जी", "एचएसपीए", "एचएसडीपीए", "डोंगल" की तलाश में कुछ भाग्य हो सकता है। लेकिन यह बिल्कुल निश्चित होने के बजाय केवल 'सभ्य अनुमान' होगा।

+0

यह एक एडीएसएल या डायलअप कनेक्शन हो सकता है। इसका पता लगाने का सबसे अच्छा तरीका क्या है। मुझे लगता है कि एडीएसएल "नेटवर्कइंटरफेस टाइप" एसिमेट्रिक डीएसएल " – Arrabi

+1

@ अरबी - एक 3 जी कनेक्शन एडीएसएल या डायलअप कनेक्शन के रूप में दिखाई देगा। आप इसका पता लगाने के तरीके के लिए पूछ रहे हैं, जो एक व्यक्तिपरक प्रश्न है, तो आपने क्या प्रयास किया है और आप इससे नाखुश क्यों हैं? –

+0

@ रामहाउंड, मैंने अपना प्रश्न अपडेट किया। गलतफहमी के लिए खेद है। – Arrabi