Klaus, I am not trying to solve a problem but trying to create a PowerShell wrapper around VirtualBox COM. Most of what I do (and there are a bunch of others) is automated in PowerShell and using vboxmanage.exe for automation isn't a better way when there is a rich set of COM interfaces available.
Ravi > [email protected] wrote: >> Hi Achim, >> >> OpenExistingConnection() works fine. However, I would like to find out >> if >> it is possible to power ON a VM in the GUI session without opening the >> console. This is important for me since I am not creating a front-end. I >> would still use the GUI as the front-end and only create/manage virtual >> machines from the commandline. > > The only way to start a VM via the API is > IVirtualBox::openRemoteSession. There are no intentions to change this. > I think you described pretty much everything by now except the real > problem you're trying to solve. > > Klaus > >> I have not looked at XIDL. So, I am unsure on how to autogenerate PS >> scripts from that. I will look in to that sson. >> >> Thanks >> Ravi >> >>> If you want to do something on an already running VM, you have to do >> OpenExistingSession. Check the VBoxManage source code. >>> PowerShell integration is a good idea, best would be to auto-generate >> the >>> integration based on our XIDL, the way we do it for all the other APIs. >>> >>> Achim. >>> >>> On Mar 5, 2010, at 11:19 , [email protected] wrote: >>> >>>> Hi, >>>> I am new to VirtualBox and exploring the COM interfaces to see how I >> can >>>> manage vBox VM from PowerShell cmdline. So far, I am able to CreateVM, >> RegisterVM, UnregisterVM and List virtual machines. Also, I could open >> a >>>> remote session using OpenRemoteSession. However, I would like to be >> able >>>> to change the state of VM without opening a remote session. Using >> openRemoteSession brings up the console window and I do not want to do >> that. >>>> Here is a set of commands I am currently running >>>> #Initialize COM >>>> $vBox = New-Object -ComObject VirtualBox.VirtualBox >>>> $vBoxSession = New-Object -ComObject VirtualBox.Session >>>> #Get VM1 in to $vm >>>> $vm = $vBox.Machines[0] >>>> #Open a remote session >>>> $vBox.OpenRemoteSession($vBoxSession,$vm.Id,"gui",$null) >>>> I can use now use the "$vBoxSession.Console" (PowerDown, etc) to >>>> change >> the PowerState. Is there a way I can just Power on/off, Pause and >> resume >>>> a >>>> virtual machine in the remote session (GUI) without opening the >> console? >>>> Thanks for your time, >>>> Ravi >>>> PS: I am aware of vBoxManage.exe but my idea of creating a PowerShell >> library is to make it easy to manage VB guests over PowerShell remoting >> channel. > _______________________________________________ vbox-dev mailing list [email protected] http://vbox.innotek.de/mailman/listinfo/vbox-dev
