Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

I am using a Logitech G9 mouse and running VMWare Workstation 6.5.3 on Vista x64. The guest OS is Win XP, and has the most current version of VMWare Tools installed. Left / right buttons and mouse wheel scrolling work fine in the guest OS, but the back / forward buttons are apparently not recognized.

I have tried installing the Logitech software inside the guest OS as well, but it still did not recognize the back / forward buttons. (I didn't really expect this to work since the guest OS doesn't actually see the mouse hardware as a Logitech G9 directly anyway.)

I vaguely remember seeing something a while back about editing the virtual machine config file to specify a 5-button mouse rather than the default 3-button setup, but I can't seem to find any specifics on how to do so in the VMWare documentation. Does anyone know if such a workaround exists, or is 5-button mouse functionality just not supported?

share|improve this question

6 Answers 6

up vote 13 down vote accepted

After adding usb.generic.allowHID = TRUE to the vmx file, just enable USB for that VM and then go to the Hardware Manager (guest system) and "scan for hardware changes". New USB Devices will then be recognized by the VM and after that your back/forward buttons should work without deactivating the mouse in the host system.

share|improve this answer
    
Thanks! That seems to have worked perfectly for me. Not sure if I just never tried this or if something has been fixed in VMWare Workstation 7 (I just upgraded) but either way, thanks! –  Tim Lara Dec 6 '09 at 18:04
4  
I just ran in to the same problem, trying to get the forward/back button to work with Ubuntu as guest OS. It turns out that I needed mouse.vusb.enable = "TRUE" in the .VMX-file as well to get it to work correctly. –  Arjen Sep 14 '12 at 17:41
    
Has anyone else still had the problem where you need to select the mouse from the Removable Devices menu (thus disconnecting it from the host) before you're able to use the mouse, despite setting usb.generic.allowHID AND mouse.vusb.enable to true? I've got an Ubuntu host and a Red Hat guest –  MattSayar Mar 12 at 23:23

Edit the .VMX file (while VM powered off) using notepad and add the following lines:

usb.generic.allowHID = "TRUE"
mouse.vusb.enable = "TRUE"

Save file and exit notepad.

share|improve this answer
    
+1 This works perfectly and is really simple compared to the unnecessarily complex answers below. –  Hubro Aug 4 '13 at 18:33
    
This doesn't seem to work with workstation 9 any more. –  Cheetah Dec 11 '13 at 20:37
    
@Cheetah I can confirm that it do work on workstation 9. –  ablacksheep Jan 17 at 15:41
    
Worked for me as well with a Logitech G700 setup with Logitech Gaming Software. Using Ubuntu 14.04. Added the above lines as noted and worked immediately. –  Halsafar Oct 15 at 0:31

It won't work directly. Because VMware only emulates 6 states with it's generic mouse. (left, right and middle mouse button, scroll wheel up, down, pressed)

But as a workaround you can use my tool I've just written in AutoIt for I really needed this function as well.

#include <Misc.au3>

$dll = DllOpen("user32.dll")

Opt("WinTitleMatchMode", 2)
Opt("TrayIconHide", 1)
$vm = WinWait("VMware Workstation")

While True
    If WinActive($vm) Then
        If _IsPressed("06", $dll) Then
            Send("{AltDown}{Right}")
            While _IsPressed("06", $dll)
                Sleep(1)
            WEnd
            Send("{AltUp}")
        ElseIf _IsPressed("05", $dll) Then
            Send("{AltDown}{Left}")
            While _IsPressed("05", $dll)
                Sleep(1)
            WEnd
            Send("{AltUp}")
        EndIf
    ElseIf _IsPressed("05", $dll) And _IsPressed("06", $dll) Then
        If MsgBox(1 + 262144, "Exit", "Do you really want to exit...?") == 1 Then ExitLoop
    EndIf
    Sleep(1)
WEnd

DllClose($dll)

Just compile this on your own with AutoIt or download the compiled executable from my webspace: http://jtmeyer.de/mousetool.exe This will wait for a window including "VMware Workstation" in it's Title and if any of the Thumb Mouse buttons are pressed (Code 05 + 06) the KeyCombination of Alt+Left/Alt+Right is pressed. If you press both buttons together the tool will exit if you confirm the appearing dialog box.

share|improve this answer
    
This will work with VMware Player using $vm = WinWait("[CLASS:vmware.fullscreenwindow]") –  Brian Jul 7 at 17:45

For workstation 10 you need another line in you .vmx than the previous suggestions. Now it's:

usb.generic.allowHID = "TRUE"
mouse.vusb.enable = "TRUE"
mouse.vusb.useBasicMouse = "FALSE"

https://communities.vmware.com/message/2328267#2328267

share|improve this answer

Add this parameter in your VM's VMX file.

usb.generic.allowHID = TRUE

Your buttons should now work - no installation of logitech software or anything required.

share|improve this answer
2  
Thanks - This setting does work, but with one caveat: You have to enable USB on the guest and then "connect" the mouse to the guest via the [VM --> Removable Devices] menu. This does enable the back / forward buttons, but it also disconnects the mouse from the host OS! Since I frequently switch back and forth between the guest and the host, this is not really a workable solution for me. If you were staying within the guest OS for extended periods of time, though it would work well. If there is no further workaround, I will probably still accept this answer as correct, though. –  Tim Lara Sep 5 '09 at 3:15

For Windows host use AutoHotKey to change mouse button mapping:

 XButton1 :: !^+{NumpadLeft}
 XButton2 :: !^+{NumpadRight}

Then in guest OS map them back:

 !^+{NumpadLeft}  :: XButton1
 !^+{NumpadRight} :: XButton2
share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.