判断本地连接网络电缆有没有插,简单地说就是判断有没有插网线,不管是否获取到IP等,不用Ping功能来判断!
能的话给出C#的代码,不甚感谢!

解决方案 »

  1.   


    Imports   System.Management   
        
      <System.ComponentModel.DefaultEvent("NetworkDisconnect")>   _   
      Public   Class   NetConnectDisconnect   
              Inherits   System.ComponentModel.Component   
              Private   WithEvents   WMIDisconnect   As   ManagementEventWatcher   
              Private   WithEvents   WMIConnect   As   ManagementEventWatcher   
        
              Public   Event   NetworkDisconnect(ByVal   sender   As   Object,   ByVal   e   As   NetworkEventArgs)   
              Public   Event   NetworkConnect(ByVal   sender   As   Object,   ByVal   e   As   NetworkEventArgs)   
        
              Private   Sub   SetUpWMI()   
                      WMIDisconnect   =   _   
                              New   ManagementEventWatcher("SELECT   *   FROM   MSNdis_StatusMediaDisconnect")   
                      WMIConnect   =   _   
                              New   ManagementEventWatcher("SELECT   *   FROM   MSNdis_StatusMediaConnect")   
        
                      WMIDisconnect.Scope   =   _   
                              New   ManagementScope("root\WMI")   
                      WMIConnect.Scope   =   _   
                              New   ManagementScope("root\WMI")   
        
                      WMIDisconnect.Start()   
                      WMIConnect.Start()   
              End   Sub   
        
              Private   Sub   WMIDisconnect_EventArrived(ByVal   sender   As   Object,   _   
                              ByVal   e   As   EventArrivedEventArgs)   _   
                              Handles   WMIDisconnect.EventArrived   
                      'Network   Disconnected   
                      Dim   instanceName   As   String   
                      instanceName   =   CStr(e.NewEvent.Properties("InstanceName").Value)   
                      RaiseEvent   NetworkDisconnect(Me,   New   NetworkEventArgs(instanceName))   
              End   Sub   
        
              Private   Sub   WMIConnect_EventArrived(ByVal   sender   As   Object,   _   
                              ByVal   e   As   EventArrivedEventArgs)   _   
                              Handles   WMIConnect.EventArrived   
                      'Network   Connected   
                      Dim   instanceName   As   String   
                      instanceName   =   CStr(e.NewEvent.Properties("InstanceName").Value)   
                      RaiseEvent   NetworkConnect(Me,   New   NetworkEventArgs(instanceName))   
              End   Sub   
        
              Public   Sub   New()   
                      SetUpWMI()   
              End   Sub   
      End   Class   
        
      Public   Class   NetworkEventArgs   
              Private   m_InstanceName   As   String   
              Friend   Sub   New(ByVal   instanceName   As   String)   
                      m_InstanceName   =   instanceName   
              End   Sub   
              Public   ReadOnly   Property   InstanceName()   As   String   
                      Get   
                              Return   m_InstanceName   
                      End   Get   
              End   Property   
      End   Class   
    供你参考
      

  2.   

    好像systeminfo中有个可以判断机器是否连上网络的属性,具体记不清楚了....
      

  3.   

    systeminfo里我查了一下,没那个属性
      

  4.   

    NetworkInterface.GetIsNetworkAvailable()