none
SCCM纠结的硬盘序列号呀...又有新发现,达人来指点下 RRS feed

  • 问题

  • 无意间搜到了挪威人的这篇博客 http://blog.silihagen.net/2010/05/hardware-inventory-og-bruk-av-management-object-format/

    照着他的方法用Win32_PhysicalMedia来获取硬盘SerialNumber,

    我的环境中全是2003和XP的,用Win32_PhysicalMedia的SerialNumber获取的都是乱七八糟的字符串,有的还是null的

    非常奇怪啊,高手指点下

    2010年9月8日 5:10

答案

  • ??

    xp 和 2003 上,还是可以用 win32_physicalmedia 的嘛。

    虽然乱信息很多,但是都应该是其它类型设备的,根据文档硬盘的 mediatype = 29。 硬盘应该是很标准化的东西,系列号应该都能读取出来的。

    只是,只是读取到WMI的这个类中,SCCM的hardware inventory缺省并不收集这个WMI类的信息,需要扩展mof文件来告诉SCCM去收集这个信息。 如何扩展看我以前的文档吧。 

    刚才有查了一下资料,另一个帖子中的 Win32_diskdrive 这个类是有问题的。。。。   在那个帖子中有链接

     

    2010年9月16日 7:44
    版主

全部回复

  • 刚才有查了一下资料,另一个帖子中的 Win32_diskdrive 这个类是有问题的,PNPdeviceID并不是系列号,还是要serialNumber这个属性. 而SerialNumber这个属性, win2003, xp 中的 Win32_diskdrive 是没有的,要vista,2008或者之后的OS。

    2003 和xp上,还是需要使用 win32_physicalmedia  --- 多谢王虎的锲而不舍的研究! :-)

    win32_physicalmedia 代表了所有的存储设备,不单只硬盘,它支持的设备太多,并不是所有设备驱动都能完美的支持读取这些信息,所以会有乱字符,很正常。详细信息看MSDN吧: http://msdn.microsoft.com/en-us/library/aa394346(VS.85).aspx

    MSDN 关于win32_diskdrive 的描述: http://msdn.microsoft.com/en-us/library/aa394132(VS.85).aspx

    2010年9月9日 3:53
    版主
  • 刚才有查了一下资料,另一个帖子中的 Win32_diskdrive 这个类是有问题的,PNPdeviceID并不是系列号,还是要serialNumber这个属性. 而SerialNumber这个属性, win2003, xp 中的 Win32_diskdrive 是没有的,要vista,2008或者之后的OS。

    2003 和xp上,还是需要使用 win32_physicalmedia  --- 多谢王虎的锲而不舍的研究! :-)

    win32_physicalmedia 代表了所有的存储设备,不单只硬盘,它支持的设备太多,并不是所有设备驱动都能完美的支持读取这些信息,所以会有乱字符,很正常。详细信息看MSDN吧: http://msdn.microsoft.com/en-us/library/aa394346(VS.85).aspx

    MSDN 关于win32_diskdrive 的描述: http://msdn.microsoft.com/en-us/library/aa394132(VS.85).aspx


    哎,我们这一时半会也不会换OS了.....只有等微软放弃XP的补丁更新了....我还是写个网页让大家在领用硬盘时来手动录入硬盘序列号吧..

     

     

    2010年9月9日 11:03
  • ??

    xp 和 2003 上,还是可以用 win32_physicalmedia 的嘛。

    虽然乱信息很多,但是都应该是其它类型设备的,根据文档硬盘的 mediatype = 29。 硬盘应该是很标准化的东西,系列号应该都能读取出来的。

    只是,只是读取到WMI的这个类中,SCCM的hardware inventory缺省并不收集这个WMI类的信息,需要扩展mof文件来告诉SCCM去收集这个信息。 如何扩展看我以前的文档吧。 

    刚才有查了一下资料,另一个帖子中的 Win32_diskdrive 这个类是有问题的。。。。   在那个帖子中有链接

     

    2010年9月16日 7:44
    版主
  • ??

    xp 和 2003 上,还是可以用 win32_physicalmedia 的嘛。

    虽然乱信息很多,但是都应该是其它类型设备的,根据文档硬盘的 mediatype = 29。 硬盘应该是很标准化的东西,系列号应该都能读取出来的。

    只是,只是读取到WMI的这个类中,SCCM的hardware inventory缺省并不收集这个WMI类的信息,需要扩展mof文件来告诉SCCM去收集这个信息。 如何扩展看我以前的文档吧。 

    刚才有查了一下资料,另一个帖子中的 Win32_diskdrive 这个类是有问题的。。。。    在那个帖子中有链接

     


    我已经扩展了mof文件让他收集Win32_PhysicalMedia中的SerialNumber 但是如何指定收集 mediatype=29的呢?
    2010年9月21日 12:54
  • 不是让它只收集 mediatype=29的,这个也无法过滤。

    而是在SCCM report中 通过这个条件 将 硬盘相关的信息过滤出来,其它的乱信息都不是关于硬盘的。

    2010年10月8日 5:27
    版主