首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是否有办法使用VBscript检查PS2键盘和/或PS2鼠标是否附加到运行Windows或更高版本的计算机上?

是否有办法使用VBscript检查PS2键盘和/或PS2鼠标是否附加到运行Windows或更高版本的计算机上?
EN

Stack Overflow用户
提问于 2015-10-06 08:14:19
回答 1查看 532关注 0票数 2

对于社区来说,我有一个相当复杂的问题:我必须管理一个拥有数百台运行Win XP SP3的PC的实验室。有时,学生们把键盘和/或鼠标从电脑上断开,所以每堂课后,我都要检查每台机器,检查它们是否已经安装好了,这就占用了我很多时间。因此,我正在用VBScript编写一个脚本,用于检查机器,并将有关配置的信息放入数据库,以帮助我判断机器上是否有问题。现在,我还想检查一下,是否附加了PS2键盘和/或PS2鼠标,这样我就可以在一个新的类启动之前立即恢复它们,而不需要一台机器去尝试。我怎么才能做到这一点?WMI?多么?谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-10-07 10:58:29

WMI应该能够提供这些信息。有关示例,请参见这个相关的问题。您可能会使用需求 Win32_KeyboardWin32_PointingDevice,如果这些不要报告断开连接 (我不能测试PS/2硬件),则可能是Win32_PnPEntity

所有这些都应该转化为VBScript,或许可以使用微软的文档关于来自VBScript的WMI。首先:

代码语言:javascript
复制
On Error Resume Next
For Each strComputer In Array("localhost")
  WScript.Echo "Computer: " & strComputer
  Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2")
  Set colItems = objWMIService.ExecQuery("SELECT * FROM Win32_Keyboard", "WQL", &h30)
  For Each objItem In colItems
    WScript.Echo objItem.Availability, objItem.Caption, _
      objItem.ConfigManagerErrorCode, objItem.ConfigManagerUserConfig, _
      objItem.Description, objItem.DeviceID, _
      objItem.ErrorCleared, objItem.ErrorDescription, _
      objItem.IsLocked, _
      objItem.LastErrorCode, _
      objItem.Layout, _
      objItem.Name, _
      objItem.PNPDeviceID, _
      objItem.Status, objItem.StatusInfo, _
      objItem.SystemCreationClassName, objItem.SystemName
  Next
  Set colItems = objWMIService.ExecQuery("SELECT * FROM Win32_PointingDevice", "WQL", &h30)
  For Each objItem In colItems
    WScript.Echo objItem.Availability, objItem.Caption, _
      objItem.ConfigManagerErrorCode, objItem.ConfigManagerUserConfig, _
      objItem.Description, objItem.DeviceID, _
      objItem.DeviceInterface, _
      objItem.ErrorCleared, objItem.ErrorDescription, _
      objItem.HardwareType, _
      objItem.IsLocked, _
      objItem.LastErrorCode, _
      objItem.Name, _
      objItem.PNPDeviceID, _
      objItem.PointingType, _
      objItem.Status, objItem.StatusInfo, _
      objItem.Synch, _
      objItem.SystemCreationClassName, objItem.SystemName
  Next
Next
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32964904

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档