Page 1 of 1

How to start a program inside a guest from the host

Posted: 9. Oct 2014, 18:48
by Docfxit
How can I start a program inside a guest (XP) from Win7 (Host) with either a bat file or a .lnk?
I don't want to see VirtualBox GUI or a cmd window. Just the guest program running.

I know how to put a link in the startup folder inside the guest. I'd like to know how to not show the Oracle startup window and the XP startup window.

Thank you,

Docfxit

Re: How to start a program inside a guest from the host

Posted: 10. Oct 2014, 15:24
by scottgus1
Sounds to me like you want the XP window to start with the application itself in it, but without the bootup screen or all the rest of the stuff that implies it's another computer living in your PC. Something like Macintosh Parallels?

"VBoxManage guestcontrol <vmname> execute" is Virtualbox's command to run programs in the guest from a batch file or command line on the host. You might also use PsExec, from Microsoft Sysinternals.

It'll take some doing to make the guest only show its window without all the boot-up stuff, and won't be completely cludge-free, but try these things: (not tested, just my thoughts)

Run the guest as a service (see viewtopic.php?f=6&t=4762) so it boots silently with the host boot-up without you having to log on, and is running invisibly all the time. It will automatically shut down or save-state when the host shuts down. You remote into the guest with Remote Desktop, either from within the guest if it's XP professional or better, or with Virtualbox's Remote Desktop transmitter, or some other remote-in software running in the guest, such as UltraVNC.

If you only need that one application to run in the guest and don't want to see the XP taskbar, get XP to boot without Explorer running (See http://www.thebestcasescenario.com/foru ... s-Explorer)

use "VBoxManage guestcontrol <vmname> execute" or Psexec as a batch file on the host to launch the desired program in the guest, and then remote into the guest using a command-line launcher for your chosen remote-in setup.

You'll see the whole screen of the guest in the window and you will be limited to the screen resolution of the guest for window sizes for your application, and you'll have to use shared folders to get data into and out of you application (no drag-n-drop), but the concept should work.

If you don't mind seeing the boot-up of the guest once when you log in, you can run the guest from a batch file in your host Startup folder which launches the guest using Vboxmanage, then after a delay issues the command to go to seamless mode. If the guest is set to not run Explorer, then you may not see anything until you use the host Vboxmanage Guestcontrol Execute or PsExec batch file to run your guset application. You'll have to remember to shut down or save-state your guest manually before logging off in this case. The previous thoughts on shared folders would still apply, but you'd have the full primary screen to use for your application window.

Keep in mind that even if any of these experiments work, all you'll see on your host taskbar is either the remote-in icon or the Virtualbox icon depending on which setup you choose, not your application's icon.