Opened 2 years ago
Last modified 12 months ago
#21230 assigned defect
VboxManage guestcontrol issue — at Version 13
| Reported by: | cmccarron | Owned by: | pentagonik |
|---|---|---|---|
| Component: | guest control | Version: | VirtualBox-7.0.2 |
| Keywords: | Cc: | ||
| Guest type: | Windows | Host type: | Windows |
Description (last modified by )
Still broken in 7.0.12 csm 10/18/2023
Prior to upgrading to VB 7.0, I could use vboxmanage guestcontrol to run a batch script on a windows 10 virtual machine and that script had access to the virtual machines shared folders/drives. I have been using this script for many years and many versions of VirtualBox. Now when the script runs it is reporting the H drive is not found. Everything in the VM_Setup.bat script works except for access to the H drive. The virtual machine has access to the H drive just not the guestcontrol feature.
Share folder section for the virtual machine is below. All of these drives work inside the virtual machine. <SharedFolders> <SharedFolder name="Projects" hostPath="F:\" writable="true" autoMount="false"/> <SharedFolder name="Downloads" hostPath="H:\Library\Downloads" writable="true" autoMount="false"/> <SharedFolder name="Shared" hostPath="H:\" writable="true" autoMount="false"/> <SharedFolder name="ElecWorkFile" hostPath="Z:\" writable="true" autoMount="false"/> </SharedFolders>
vboxmanage guestcontrol %VMN% run --quiet --unquoted-args --username "%VMU%" --password "" --exe "H:\Scripts\VM_Setup.bat" -- H:\Scripts\VM_Setup.bat %VM%
VBoxManage.exe: error: Waiting for guest process (flags 0x1) failed: No such file or directory "H:\Scripts\VM_Setup.bat" on guest VBoxManage.exe: error: Details: code VBOX_E_IPRT_ERROR (0x80bb0005), component GuestProcessWrap, interface IGuestProcess, callee IUnknown VBoxManage.exe: error: Context: "WaitForArray(ComSafeArrayAsInParam(aWaitStartFlags), gctlRunGetRemainingTime(msStart, cMsTimeout), &waitResult)" at line 1373 of file VBoxManageGuestCtrl.cpp Waiting for VM Setup to Complete... Press any key to continue . . .
<------ Test Script (TestQ.bat) Start ----------> @echo off cls setlocal enabledelayedexpansion
SET VM=vm1 SET VMN="WinX Rockwell" SET VDI=WinX_Rockwell SET VMU=alliance SET VBMP=C:\Program Files\Oracle\VirtualBox SET VBM=vboxmanage.exe SET PATH=%PATH%;%VBMP% SET LINES=0
:WAITFORSETUP SET VMDONE=0
For /f "usebackq tokens=*" %%i IN (%VBM% guestcontrol %VMN% run --quiet --unquoted-args --username "%VMU%" --password "" --exe "H:\Scripts\VM_Status.bat" -- H:\Scripts\VM_Status.bat %VM% ) DO (
SET /a LINES+=1
SET RESULTS=%%i
echo %%i
)
echo %VMDONE% %LINES%
IF "%LINES%" EQU "0" GOTO SKIP
IF "%LINES%" NEQ "4" GOTO SKIP
IF NOT "!RESULTS!." EQU "RESULTS:Complete=!." (
SET VMDONE=1
)
:SKIP If %VMDONE% EQU 0 ( Echo Waiting for VM Setup to Complete... ) ELSE ( Echo VM Setup to Complete ) endlocal
pause <------ Test Script (TestQ.bat) End ---------->
Change History (21)
by , 2 years ago
| Attachment: | SharedDrives1.JPG added |
|---|
by , 2 years ago
| Attachment: | SharedDrives2.JPG added |
|---|
Results of the TestQ.bat script ran from the VM Host
by , 22 months ago
| Attachment: | NoPanda2.JPG added |
|---|
Showing the virtual machine share folder is working
by , 22 months ago
| Attachment: | WinX Rockwell-Hardening-2022-12-13-10-12-25.7z added |
|---|
Hardening Log File
comment:2 by , 22 months ago
I tested this again on a computer that had Panda removed from it. The only virus software installed is Windows Defender. I get the same result. The GuestControl interface no longer has access to the shared folders in the virtual machine.
comment:3 by , 21 months ago
This is still broken in version 7.0.6
VBoxManage.exe: error: Waiting for guest process (flags 0x1) failed: No such file or directory "H:\Scripts\VM_Status.bat" on guest VBoxManage.exe: error: Details: code VBOX_E_IPRT_ERROR (0x80bb0005), component GuestProcessWrap, interface IGuestProcess, callee IUnknown VBoxManage.exe: error: Context: "WaitForArray(ComSafeArrayAsInParam(aWaitStartFlags), gctlRunGetRemainingTime(msStart, cMsTimeout), &waitResult)" at line 1373 of file VBoxManageGuestCtrl.cpp 0 0 Waiting for VM Setup to Complete...
comment:4 by , 17 months ago
Thanks for the report; this mostly likely has to do with the changed argument 0 handling we introduced in 7.0. This will be fixed in the next upcoming maintenance version, so that you can run your script in an unmodified way again.
comment:5 by , 17 months ago
| Owner: | set to |
|---|---|
| Status: | new → assigned |
comment:6 by , 17 months ago
I believe we may have just encountered this issue in a slightly different context - the symptoms sound rather similar.
We use VirtualBox for our UI testing pipeline, using VBoxManage to spawn GUI applications on a Windows guest, and then subsequently run scripts to interact with that GUI.
With Guest Additions 6.1.16, everything works as expected, and we can use a command line like the following to spawn a GUI process on the user vagrant:
VBoxManage guestcontrol <vm> run --username vagrant --password ... -- "C:/Program Files/.../Software.exe"
It is observable using Sysinternals Process Explorer that this actually spawns as a process owned by vagrant.
However, using Guest Additions 7.0.6, running the same command spawns the process under a service owned by SYSTEM, not vagrant. This means that the GUI window never actually appears on the desktop, and our tests can't interact with it.
Given that aiui drive mappings are specific to a user, I think this sounds like the same problem, where the command run by Guest Additions is being executed under the wrong account.
comment:7 by , 16 months ago
I am on a fedora 37 host, with a W10 guest (edited 2023-08-10: "host" and "guest" were mistakenly swapped) and I am experiencing a very a similar (or the same) issue. Some notes that may help.
- The problem of not finding the drive went away as soon as I checked the automount property in the VM settings. I see that the original bug report contains autoMount="false", so it may be worth trying to set that to true.
- After checking the automount checkbox, my host script that is supposed to start a program in the guest and open a file on the shared folder, still doesn't work. At least not fully. Though, in the Windows task manager I can see that the corresponding application is started up, but its window is not visible.
- Opening the same file from the guest works fine.
comment:8 by , 14 months ago
My fedora system recently updated to Virtualbox 7.0.10 via rpmfusion, but the problem still persists.
comment:9 by , 13 months ago
Is this bug report still active?
If the problem persists for the OP in the most recent version of VB, he/she may update the version in the bug report to 7.0.10.
comment:11 by , 12 months ago
Is it possible to update the version in the bug report (yellow area on top) to the current version? Hopefully that generates some attention.
And, a similar (duplicate?) bug has been reported recently: https://www.virtualbox.org/ticket/21822
comment:12 by , 12 months ago
I cannot update the version in the header. It still appears broken in 7.0.12 also.
comment:13 by , 12 months ago
| Description: | modified (diff) |
|---|


Virtual Machine showing H Drive attached