技巧.【转】在虚拟机Vmware中使用HID设备(如USB免驱键盘)
ZC:我的环境:Win7x64、VMware10
ZC:我的处理:
ZC: (1)、usb.generic.allowHID = "TRUE" (本来就有,将它的位置提前)
ZC: (2)、usb.generic.allowLastHID = "TRUE" (本来没有,需要添加)
ZC: (3)、usb.present = "TRUE" (将原来的"FALSE"改成"TRUE")
ZC: (4)、启动虚拟机的服务:VMUSBArbService(VMware USB Arbitration Service)
参考文章:
1、网页内容保存:
在Vmware中使用USB键盘, USB键盘可以正常输入, 但是在虚拟系统的设备管理器中仍然只显示一个PS/2键盘,
插上USB键盘后, 也没有出现新硬件提示. USB键盘应该显示为"HID Keyboard Device".
解决方法:
先关闭虚拟机,编辑虚拟机的配置文件.vmx, 在 usb:0.present = "TRUE" 之前添加如下两行:
usb.generic.allowHID = "TRUE"
usb.generic.allowLastHID = "TRUE"
再重新开启虚拟机就行了。
注意,如果这个文件里面已经有一行 usb.generic.allowHID = "FALSE",就只需把FLASE改成TRUE,不要重复添加了,否则虚拟机打不开。(好象VM8创建的虚拟机配置文件里就有这行)
如果没有usb.generic.allowHID = "TRUE"这行,在VM里就看不到USB鼠标键盘,就没办法让虚拟系统连接USB鼠标键盘。
也可在VM8里“编辑虚拟机设置-USB控制器—勾选显示所有USB输入设备。这和直接在.vmx里添加usb.generic.allowHID = "TRUE"是一样的。
插上USB键盘, 点击VM菜单上的“虚拟机-移除设备-(相应的USB鼠标键盘和声卡设备, 我这里是"GreenAsia AMP USB KB Pro")-与主机连接或断开连接”,就可将USB鼠标键盘和USB声卡分配给虚拟操作系统。
(如果没有添加usb.generic.allowLastHID = "TRUE"这行,分配时就会出现“无法连接到此虚拟机的……”“主机需要输入此设备”的提示窗口。)
上述红字的意思就是: 相应的USB设备就不再受到主机的控制了, 而只供虚拟机使用。虚拟机中出现USB键盘设备HID Keyboard Device.
解决方法来自: "用VMware8.0实现主机一拖二,两人共用一台主机"(http://www.clubstars.cn/blog/post/36.html)
2、我的 "E:\ZC_XuNiJi\xp_sp3_DriverStudio\xp_sp3_x86_pro_han_cd_vl_x14_74070.vmx",主要就是 加了 “usb.generic.allowLastHID = "TRUE"”,∵ “usb.generic.allowHID = "TRUE"” 原来就有 只是把它移动到 更前面的位置了
2.1、修改前 xp_sp3_x86_pro_han_cd_vl_x14_74070.vmx 的内容:
.encoding = "GBK" config.version = "8" virtualHW.version = "10" scsi0.present = "TRUE" memsize = "768" ide0:0.present = "TRUE" ide0:0.fileName = "xp_sp3_x86_pro_han_cd_vl_x14_74070.vmdk" usb.present = "FALSE" mks.enable3d = "TRUE" serial0.present = "TRUE" serial0.fileType = "thinprint" pciBridge0.present = "TRUE" pciBridge4.present = "TRUE" pciBridge4.virtualDev = "pcieRootPort" pciBridge4.functions = "8" pciBridge5.present = "TRUE" pciBridge5.virtualDev = "pcieRootPort" pciBridge5.functions = "8" pciBridge6.present = "TRUE" pciBridge6.virtualDev = "pcieRootPort" pciBridge6.functions = "8" pciBridge7.present = "TRUE" pciBridge7.virtualDev = "pcieRootPort" pciBridge7.functions = "8" vmci0.present = "TRUE" hpet0.present = "TRUE" usb.vbluetooth.startConnected = "TRUE" displayName = "xp_sp3_x86_pro_han_cd_vl_x14_74070" guestOS = "winxppro" nvram = "xp_sp3_x86_pro_han_cd_vl_x14_74070.nvram" virtualHW.productCompatibility = "hosted" powerType.powerOff = "soft" powerType.powerOn = "soft" powerType.suspend = "soft" powerType.reset = "soft" extendedConfigFile = "xp_sp3_x86_pro_han_cd_vl_x14_74070.vmxf" uuid.bios = "56 4d c4 60 02 f9 a7 1e-49 13 8f be 66 5e 49 07" uuid.location = "56 4d c4 60 02 f9 a7 1e-49 13 8f be 66 5e 49 07" replay.supported = "FALSE" replay.filename = "" ide0:0.redo = "" pciBridge0.pciSlotNumber = "17" pciBridge4.pciSlotNumber = "21" pciBridge5.pciSlotNumber = "22" pciBridge6.pciSlotNumber = "23" pciBridge7.pciSlotNumber = "24" scsi0.pciSlotNumber = "16" usb.pciSlotNumber = "-1" vmci0.pciSlotNumber = "36" vmci0.id = "1141701829" monitor.phys_bits_used = "40" vmotion.checkpointFBSize = "134217728" cleanShutdown = "TRUE" softPowerOff = "TRUE" tools.remindInstall = "FALSE" tools.syncTime = "FALSE" unity.wasCapable = "FALSE" toolsInstallManager.updateCounter = "1" ide0:1.present = "TRUE" ide0:1.fileName = "xp_sp3_x86_pro_han_cd_vl_x14_74070-0.vmdk" ide0:1.redo = "" gui.lastPoweredViewMode = "fullscreen" checkpoint.vmState = "" serial1.present = "TRUE" serial1.autodetect = "FALSE" serial1.startConnected = "TRUE" usb.generic.allowHID = "TRUE" gui.exitOnCLIHLT = "TRUE" serial1.fileName = "\\.\pipe\com_2" ethernet0.present = "TRUE" sound.present = "TRUE" ethernet0.wakeOnPcktRcv = "FALSE" ethernet0.addressType = "generated" ethernet0.pciSlotNumber = "32" ethernet0.generatedAddress = "00:0c:29:5e:49:07" ethernet0.generatedAddressOffset = "0" sound.fileName = "-1" sound.autodetect = "TRUE" sound.pciSlotNumber = "33" serial1.fileType = "pipe" serial1.tryNoRxLoss = "TRUE" serial2.present = "FALSE" ehci.present = "FALSE" usb_xhci.present = "FALSE" ide1:0.present = "FALSE" floppy0.present = "FALSE"
2.2、修改后 xp_sp3_x86_pro_han_cd_vl_x14_74070.vmx 的内容:
.encoding = "GBK" config.version = "8" virtualHW.version = "10" scsi0.present = "TRUE" memsize = "768" ide0:0.present = "TRUE" ide0:0.fileName = "xp_sp3_x86_pro_han_cd_vl_x14_74070.vmdk" usb.generic.allowHID = "TRUE" usb.generic.allowLastHID = "TRUE" usb.present = "TRUE" mks.enable3d = "TRUE" serial0.present = "TRUE" serial0.fileType = "thinprint" pciBridge0.present = "TRUE" pciBridge4.present = "TRUE" pciBridge4.virtualDev = "pcieRootPort" pciBridge4.functions = "8" pciBridge5.present = "TRUE" pciBridge5.virtualDev = "pcieRootPort" pciBridge5.functions = "8" pciBridge6.present = "TRUE" pciBridge6.virtualDev = "pcieRootPort" pciBridge6.functions = "8" pciBridge7.present = "TRUE" pciBridge7.virtualDev = "pcieRootPort" pciBridge7.functions = "8" vmci0.present = "TRUE" hpet0.present = "TRUE" usb.vbluetooth.startConnected = "TRUE" displayName = "xp_sp3_x86_pro_han_cd_vl_x14_74070" guestOS = "winxppro" nvram = "xp_sp3_x86_pro_han_cd_vl_x14_74070.nvram" virtualHW.productCompatibility = "hosted" powerType.powerOff = "soft" powerType.powerOn = "soft" powerType.suspend = "soft" powerType.reset = "soft" extendedConfigFile = "xp_sp3_x86_pro_han_cd_vl_x14_74070.vmxf" uuid.bios = "56 4d c4 60 02 f9 a7 1e-49 13 8f be 66 5e 49 07" uuid.location = "56 4d c4 60 02 f9 a7 1e-49 13 8f be 66 5e 49 07" replay.supported = "FALSE" replay.filename = "" ide0:0.redo = "" pciBridge0.pciSlotNumber = "17" pciBridge4.pciSlotNumber = "21" pciBridge5.pciSlotNumber = "22" pciBridge6.pciSlotNumber = "23" pciBridge7.pciSlotNumber = "24" scsi0.pciSlotNumber = "16" usb.pciSlotNumber = "34" vmci0.pciSlotNumber = "36" vmci0.id = "1141701829" monitor.phys_bits_used = "40" vmotion.checkpointFBSize = "134217728" cleanShutdown = "TRUE" softPowerOff = "TRUE" tools.remindInstall = "FALSE" tools.syncTime = "FALSE" unity.wasCapable = "FALSE" toolsInstallManager.updateCounter = "1" ide0:1.present = "TRUE" ide0:1.fileName = "xp_sp3_x86_pro_han_cd_vl_x14_74070-0.vmdk" ide0:1.redo = "" gui.lastPoweredViewMode = "fullscreen" checkpoint.vmState = "" serial1.present = "TRUE" serial1.autodetect = "FALSE" serial1.startConnected = "TRUE" gui.exitOnCLIHLT = "TRUE" serial1.fileName = "\\.\pipe\com_2" ethernet0.present = "TRUE" sound.present = "TRUE" ethernet0.wakeOnPcktRcv = "FALSE" ethernet0.addressType = "generated" ethernet0.pciSlotNumber = "32" ethernet0.generatedAddress = "00:0c:29:5e:49:07" ethernet0.generatedAddressOffset = "0" sound.fileName = "-1" sound.autodetect = "TRUE" sound.pciSlotNumber = "33" serial1.fileType = "pipe" serial1.tryNoRxLoss = "TRUE" serial2.present = "FALSE" ehci.present = "FALSE" usb_xhci.present = "FALSE" ide1:0.present = "FALSE" floppy0.present = "FALSE" usb:1.speed = "2" usb:1.present = "TRUE" usb:1.deviceType = "hub" usb:1.port = "1" usb:1.parent = "-1" usb.autoConnect.device0 = "path:1/0/0/1 autoclean:1" usb:0.present = "TRUE" usb:0.deviceType = "hid" usb:0.port = "0" usb:0.parent = "-1" usb.autoConnect.device1 = "path:1/1/0/0 autoclean:1"
3、
4、
5、