有些可能通过网络管理员在路由器上部署脚本实现,有些可能写个扫描器针对地址段扫描,这些成本都较高且本单位管理相当严格,这都是坚决不允许的(直接违反规定)。
OK,最简单的就是写个小程序,自动获取后显示计算机信息。给单位各部门下个通知让他们运行程序,将信息通过邮件汇总即可,注意因为制度问题,不允许直接写个C/S结构的程序,所以写的是本地程序(不连接网络)。
OK,程序运行效果如下,点击复制信息按钮后计算机信息会自动复制到粘贴板(PS,马赛克不会,直接涂了)。
简单说下实现过程,开发环境是Visual Studio 2013(猫哥感觉是最好用的VS版本),本程序是基于.net framework 2.0的(注意单位很多计算机是XP系统的,不要使用太高的.net framework版本以免操作系统不支持)。因为.net和windows就是一家人,微软已经将.net framework封装到牙齿了,所以对于获取计算机信息这样的小case,简直so easy,直接调用类库实现。
稍微需要注意的是,获取ip地址、子网掩码、网关等信息需要加载程序集System.Management。这里简单说下程序集,类似于java中的jar包,也是人家封装好的直接拿来用。右击项目名称添加引用即可,这个程序集是.net2.0自带的,不用到处去找。
然后直接调用以下方法:
ManagementClass mc = new ManagementClass("Win32_NetworkAdapterConfiguration");
ManagementObjectCollection nics = mc.GetInstances();
1
2
IP相关信息就在nics里面,获取之后输出到页面控件即可。