还有个好办法,就是用命令符net view 得到所有的计算机名后放到一个.txt 文本文件中,再把里面的记录一条条地读出来. 以下是核心代码: 用C#来读取文本文件: private void button1_Click(object sender, System.EventArgs e) { this.openFileDialog1=new OpenFileDialog(); if(this.openFileDialog1.ShowDialog()==DialogResult.OK ) { str_text=this.openFileDialog1.FileName; StreamReader objReader = new StreamReader(str_text); string sLine=""; ArrayList arrText = new ArrayList(); while (sLine != null) { sLine = objReader.ReadLine(); if(sLine !=null) { if (sLine.IndexOf("\\")==0) \\这句的功能是读取文本文件里所有含有”\\”前缀的记录 { arrText.Add(sLine); } } } objReader.Close(); foreach (string str_out in arrText)//遍历这个数组 this.listBox1.Items.Add(str_out); } } 在 C#中运行 CMD 程序或其它程序返回值: private void button3_Click(object sender, System.EventArgs e) { System.Diagnostics.ProcessStartInfo psi = new System.Diagnostics.ProcessStartInfo(); psi.FileName = @"C:\WINDOWS\system32\cmd.exe "; psi.Arguments =@"/c net view > c:\\qw.txt"; //关键是这个地方,需要加上 /c 这个参数 psi.WindowStyle=System.Diagnostics.ProcessWindowStyle.Hidden; System.Diagnostics.Process.Start(psi); } PS:用完后记得再删掉这个临时的.tx t 文件. 1. 在ASP.NET 中专用属性: 获取服务器电脑名:Page.Server.MachineName 获取用户信息:Page.User 获取客户端电脑名:Page.Request.UserHostName 获取客户端电脑IP:Page.Request.UserHostAddress 2. 在网络编程中的通用方法: 获取当前电脑名:static System.Net.Dns.GetHostName() 根据电脑名取出全部IP 地址:static System.Net.Dns.Resolve(电脑名).AddressList 也可根据IP 地址取出电脑名:static System.Net.Dns.Resolve(IP 地址).HostName 3. 系统环境类的通用属性: 当前电脑名:static System.Environment.MachineName 当前电脑所属网域:static System.Environment.UserDomainName 当前电脑用户:static System.Environment.UserName //通过IP 获取主机名 using System.Net; IPHostEntry remoteHost=Dns.G...