[vbox-dev] tracking down bug in built-in RDP server

Noel Grandin noel at peralex.com
Mon Mar 11 02:35:20 PDT 2013

On 2013-02-11 11:28, Klaus Espenlaub wrote:
> Hi Noel,
> On 07.02.2013 07:19, Noel Grandin wrote:
>> Hi
>> I've noticed an issue where after a while the VBox built-in Remote
>> Desktop Server will stop forwarding keyboard events to the guest OS.
>> How can I help track this down?
> You could check if the keyboard events get passed to the VM, by using 
> vboxshell.py - this needs a working python 2.x install (on the host 
> system).
> Oh, I just realized that vboxshell.py is not included in the 
> VirtualBox package for Windows (the python bindings are installed if 
> python is found in the path at VirtualBox package install time - if 
> you didn't have python installed already, just reinstall VirtualBox).
> You can fetch it from 
> https://www.virtualbox.org/browser/vbox/trunk/src/VBox/Frontends/VBoxShell/vboxshell.py?rev=43425&format=raw
> Anyway, after downloading you should be able to start the shell with 
> "python vboxshell.py". It should print your VirtualBox version number 
> and show a "vbox>" prompt. The command to perform the mentioned 
> keyboard event dumping is "monitorGuestKbd <vmname> <timeout>", so if 
> you want to get all keyboard events for the VM named myvm for 30 
> seconds you need to type "monitorGuestKbd 'myvm' 30". For all commands 
> mentioned don't include the double quotes.

OK, I managed to trigger my problem again - herewith my travails:

First, I had the problem of accidentally installing the wrong version of 
Python (3.3), which of course, VirtualBox doesn't support.

Then I discovered the hard way that you have to launch the command 
prompt in administrator mode, otherwise the following stuff won't work.

Then, you have to run
  C:\Python27\python.exe vboxsetupapi.py install

I thought the VirtualBox installer did that already, but obviously not, 
because trying to run vboxshell.py produced errors about missing vboxapi 

And note that running
  C:\Python27\python.exe vboxsetupapi.py --help
produces incorrect instructions, it says to run "setup.py install", 
which of course doesn't exist.

Then, I had to install the "Python for windows extensions", making sure 
I picked the correct version.

Then, I got this error: which I'm at a loss to explain.

C:\temp>c:\Python27\python.exe vboxshell.py
Traceback (most recent call last):
   File "vboxshell.py", line 3507, in <module>
   File "vboxshell.py", line 3484, in main
     g_virtualBoxManager = VirtualBoxManager(style, params)
   File "c:\Python27\lib\site-packages\vboxapi\__init__.py", line 514, 
in __init__
     exec "self.platform = Platform"+style+"(platparams)"
   File "<string>", line 1, in <module>
   File "c:\Python27\lib\site-packages\vboxapi\__init__.py", line 220, 
in __init__
   File "c:\Python27\lib\site-packages\win32com\client\gencache.py", 
line 529, in EnsureDispatch
     disp = win32com.client.Dispatch(prog_id)
   File "c:\Python27\lib\site-packages\win32com\client\__init__.py", 
line 95, in Dispatch
     dispatch, userName = 
   File "c:\Python27\lib\site-packages\win32com\client\dynamic.py", line 
114, in _GetGoodDispatchAndUserName
     return (_GetGoodDispatch(IDispatch, clsctx), userName)
   File "c:\Python27\lib\site-packages\win32com\client\dynamic.py", line 
91, in _GetGoodDispatch
     IDispatch = pythoncom.CoCreateInstance(IDispatch, None, clsctx, 
pywintypes.com_error: (-2146959355, 'Server execution failed', None, None)

Disclaimer: http://www.peralex.com/disclaimer.html

More information about the vbox-dev mailing list