我想查看我所处的局域网里,有哪些人--即整个网络在线人的IP和机器名,MAC地址要是也能查到是最好的了?最好高人能给提供一下代码,谢谢.

解决方案 »

  1.   


    private void EnumComputers()
    {
        using(DirectoryEntry root = new DirectoryEntry("WinNT:"))
        {
          foreach(DirectoryEntry domain in root.Children)
          {
            Console.WriteLine("Domain | WorkGroup: "+domain.Name);
            foreach(DirectoryEntry computer in domain.Children)
        {
         Console.WriteLine("Computer: "+computer.Name);
        }
       }
    }
    }
      

  2.   

    方法太多了, 楼主可以参考: http://www.cnblogs.com/luoht/archive/2009/12/18/1627431.html
      

  3.   

    http://blog.csdn.net/szj3714/archive/2008/06/24/2582808.aspx详细代码。
    接分
      

  4.   

    Public Shared Function GetComputerList() As ArrayList  
        
      Dim list As New ArrayList()  
      Dim root As New DirectoryEntry("WinNT:")  
      Dim domains As DirectoryEntries = root.Children  
      domains.SchemaFilter.Add("domain")  
      For Each domain As DirectoryEntry In domains  
      Dim iphe As IPHostEntry = Nothing  
      Try   
      iphe = Dns.GetHostByName(computer.Name)  
      Catch  
      Continue Try  
      End Try  
      Next  
        
        
      Return list  
    End Function  http://topic.csdn.net/u/20090928/17/fa15f7ab-f562-4d53-a57d-3caf17ace5c5.html
      

  5.   

    private void EnumComputers()
    {
        using(DirectoryEntry root = new DirectoryEntry("WinNT:"))
        {
          foreach(DirectoryEntry domain in root.Children)
          {
            Console.WriteLine("Domain | WorkGroup: "+domain.Name);
            foreach(DirectoryEntry computer in domain.Children)
        {
         Console.WriteLine("Computer: "+computer.Name);
        }
       }
    }
    }