| 网站首页 | 新闻中心 | 系统安全 | 网络安全 | 安全技术 | 下载中心 | 
课件制作网.
收藏本站
设为首页
安全365
如何确定计算机是笔记本电脑还是台式计算机?
如何确定计算机是笔记本电脑还是台式计算机?
作者:佚名 文章来源:不详 点击数: 更新时间:2007-1-23 19:25:32
问:

嗨,Scripting Guy!是否可以使用 WMI 来确定计算机是笔记本电脑还是台式计算机?

-- CB

答:

嗨,CB。毫无疑问,尽管我们并不知道您自己是怎么解决这个问题的。大家知道,有一个很小的称为 Win32_SystemEnclosure 的傻瓜式 WMI 类,ChassisTypes 属性可以告诉您,您使用的是笔记本电脑、台式计算机还是其他类型的计算机。哦,输入。以下脚本可以让您知道您使用的是哪种类型的计算机:

strComputer = "."

Set objWMIService = GetObject("winmgmts:" _

    & "{impersonationLevel=impersonate}!//" & strComputer & "/root/cimv2")

Set colChassis = objWMIService.ExecQuery _

    ("Select * from Win32_SystemEnclosure")

For Each objChassis in colChassis

    For  Each strChassisType in objChassis.ChassisTypes

        Wscript.Echo strChassisType

    Next

Next

好吧,以上脚本只是在一定程度上让您知道您使用的是哪种类型的计算机。实际上,ChassisType 属性返回的是一个数字,这就是说当我们在面前的计算机上运行这个脚本时,我们将得到 10。那么,什么是 10 呢?根据WMI SDK,它指的是笔记本计算机。猜一猜会发生什么呢?没错!

但您并不必每次检查计算机类型时都参考 SDK。以下经过扩展的脚本使用一个 Select Case 语句,它可将这些整数转换为更有意义的内容:

strComputer = "."

Set objWMIService = GetObject("winmgmts:" _

    & "{impersonationLevel=impersonate}!//" & strComputer & "/root/cimv2")

Set colChassis = objWMIService.ExecQuery _

    ("Select * from Win32_SystemEnclosure")

For Each objChassis in colChassis

    For  Each strChassisType in objChassis.ChassisTypes

        Select Case strChassisType

            Case 1

                Wscript.Echo "Other"

            Case 2

                Wscript.Echo "Unknown"

            Case 3

                Wscript.Echo "Desktop"

            Case 4

                Wscript.Echo "Low Profile Desktop"

            Case 5

                Wscript.Echo "Pizza Box"

            Case 6

                Wscript.Echo "Mini Tower"

            Case 7

                Wscript.Echo "Tower"

            Case 8

                Wscript.Echo "Portable"

            Case 9

                Wscript.Echo "Laptop"

            Case 10

                Wscript.Echo "Notebook"

            Case 11

                Wscript.Echo "Handheld"

            Case 12

                Wscript.Echo "Docking Station"

            Case 13

                Wscript.Echo "All-in-One"

            Case 14

                Wscript.Echo "Sub-Notebook"

            Case 15

                Wscript.Echo "Space Saving"

            Case 16

                Wscript.Echo "Lunch Box"

            Case 17

                Wscript.Echo "Main System Chassis"

            Case 18

                Wscript.Echo "Expansion Chassis"

            Case 19

                Wscript.Echo "Sub-Chassis"

            Case 20

                Wscript.Echo "Bus Expansion Chassis"

            Case 21

                Wscript.Echo "Peripheral Chassis"

            Case 22

                Wscript.Echo "Storage Chassis"

            Case 23

                Wscript.Echo "Rack Mount Chassis"

            Case 24

                Wscript.Echo "Sealed-Case PC"

            Case Else

                Wscript.Echo "Unknown"

            End Select

    Next

Next

在您提问以前,不,我们并不知道这些大多数计算机类型是什么,也不知道便携式计算机、膝上型计算机以及笔记本计算机之间有什么区别。我们也不知道 ChassisTypes 属性为什么存储为数组。那是否意味着一台计算机可以有多种计算机类型?不要问我们,我们也不知道。让我们喘口气吧:毕竟我们只是 Microsoft Scripting Guy,可不是 Microsoft Hardware Guy!

【转自世纪安全网 http://www.21safe.com】
文章录入:admin    责任编辑:admin 
  • 上一篇文章:

  • 下一篇文章:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
     
     
     
    用户注册邮箱被盗 MSN已
    用户注册邮箱被盗 MSN已
    CSO们如何应对新技术的安
    普通企业如何应对黑客攻
    企业该如何防范由VoIP引
    浅谈IT如何实现企业的应
    黑客与正规企业是如何串
    如何无限制申请Gmail 2.
    企业如何避免人为因素的
    社会工程学:如何利用黑客

    Copyright © 2006-2008 www.anquan365.com 安全365
    建议使用1024*768分辨率及第三方浏览器对本站进行浏览