我们正在对我们所有的工作站进行实际盘点,其中很多工作站是匆忙部署的。 因此,我们并没有logging所有关于他们的信息,我们希望。 出于授权的原因,我们使用了Windows 7 Pro和Windows 7 Enterprise的组合。 我们知道有多less许可证正在使用(我们有一个KMS服务器就地),但我们不知道在哪个特定的工作站上安装了哪个版本的Windows。 所以我的问题是如此看待:
是否有可能通过AD或其他类似的机制来确定域名成员使用的Windows版本是什么? 如果这个信息和机器的主机名可以用脚本来拉动,而不是通过AD远程pipe理工具指向和点击,那将是非常好的。
如果需要,我有域pipe理员权限。
Dsquery将完成这项工作:
dsquery * domainroot -limit 0 -filter "(objectCategory=computer)" -attr name operatingsystem
这个命令转储AD知道成员计算机的操作系统。
如果我没有弄错,AD仅存储操作系统的版本,服务包和内部版本号,而不是版本号。
您可以使用WMI来获取该版本以查询Win32_OperatingSystem类。
编辑
通过ADSIEdit再次查看计算机对象的operatingSystem属性后,对于Windows Vista / 7 / 2K8和更高版本,operatingSystem属性将显示版本和版本,而对于Windows XP / 2003和更早版本,它只显示版本,但不是版本。
每个计算机对象都应该有这个属性集。 使用Powershell(或PowerGUI,如果你讨厌CLI)转储所有计算机对象及其操作系统版本的列表。