Edit C:\Program Files (x86)\VMware\VMware VIX\doc\lang\perl\functions\VMRunProgramInGuestEx.html
<html> <head> <meta HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=ISO-8859-1"> <meta HTTP-EQUIV="Content-Style-Type" CONTENT="text/css"> <link rel="stylesheet" href="../../../foundrydoc.css" type="text/css" charset="ISO-8859-1"> <link rel="stylesheet" href="foundrydoc.css" type="text/css" charset="ISO-8859-1"> </head> <body> <h1>Name</h1> <b>VMRunProgramInGuestEx</b> <h1>Description</h1> <pre> ($err, %procInfo) = VMRunProgramInGuestEx($vmHandle, $guestProgramName, $commandLineArgs, $options, $propertyListHandle); </pre> <p> This function runs a program in the guest operating system. The program must be stored on a file system available to the guest before calling this function. <h1>Parameters</h1> <dl> <dt><i>vmHandle</i></dt> <dd> Identifies a virtual machine. Call VMOpen() to create a virtual machine handle. </dd> <dt><i>guestProgramName</i></dt> <dd> The path name of an executable file on the guest operating system. </dd> <dt><i>commandLineArgs</i></dt> <dd> A string to be passed as command line arguments to the executable identified by guestProgramName. </dd> <dt><i>options</i></dt> <dd> Run options for the program. See the remarks below. </dd> <dt><i>propertyListHandle</i></dt> <dd> Must be VIX_INVALID_HANDLE. </dd> </dl> <h1>Return Value</h1> $err. The error code returned by the operation. For returned values, see Topics > Error Codes. <p> %procInfo is a hash containing information about the newly created process. <h1>Remarks</h1> <ul> <li> This function runs a program in the guest operating system. The program must be stored on a file system available to the guest before calling this function. <li> The current working directory for the program in the guest is not defined. Absolute paths should be used for files in the guest, including guestProgramName and any command-line arguments. <li> You must call VMLoginInGuest() before calling this function. <li> If the program to run in the guest is intended to be visible to the user in the guest, such as an application with a graphical user interface, you must call VMLoginInGuest() with VIX_LOGIN_IN_GUEST_REQUIRE_INTERACTIVE_ENVIRONMENT as the option before calling this function. This will ensure that the program is run within a graphical session that is visible to the user. <li> If the options parameter is 0, this function will return when the program exits in the guest operating system. Alternatively, you can pass VIX_RUNPROGRAM_RETURN_IMMEDIATELY as the value of the options parameter, and this function returns as soon as the program starts in the guest. <li> For Windows guest operating systems, when running a program with a graphical user interface, you can pass VIX_RUNPROGRAM_ACTIVATE_WINDOW as the value of the options parameter. This option will ensure that the application's window is visible and not minimized on the guest's screen. This can be combined with the VIX_RUNPROGRAM_RETURN_IMMEDIATELY flag using the bitwise inclusive OR operator (|). VIX_RUNPROGRAM_ACTIVATE_WINDOW has no effect on Linux guest operating systems. <li> On a Linux guest operating system, if you are running a program with a graphical user interface, it must know what X Windows display to use, for example host:0.0, so it can make the program visible on that display. Do this by passing the -display argument to the program, if it supports that argument, or by setting the DISPLAY environment variable on the guest. See documentation on VMWriteVariable. <li> Depending on the behavior of the guest operating system, there may be a short delay after the job completes before the process is visible in the guest operating system. <li> When VMRunProgramInGuestEx returns, %procInfo will contain information about the new process. <ul> <li> PROCESS_ID: the process id. <li> ELAPSED_TIME: the process elapsed time in seconds; <li> EXIT_CODE: the process exit code. </ul> If the option parameter is VIX_RUNPROGRAM_RETURN_IMMEDIATELY, the latter two will both be undef. </ul> <h1>Side Effects</h1> None. <h1>Requirements</h1> <pre> use VMware::Vix::Simple; use VMware::Vix::API::Constants; </pre> since VMware Server 1.0 <br>Minimum Supported Guest OS: Microsoft Windows NT Series, Linux<br><h1>Example</h1> <pre> my $err = VIX_OK; my $hostHandle = VIX_INVALID_HANDLE; my $vmHandle = VIX_INVALID_HANDLE; ($err, $hostHandle) = HostConnect(VIX_API_VERSION, VIX_SERVICEPROVIDER_VMWARE_WORKSTATION, undef, # hostName 0, # hostPort undef, # userName undef, # password 0, # options VIX_INVALID_HANDLE); # propertyListHandle die "HostConnect() failed, $err ", GetErrorText($err), "\n" if $err != VIX_OK; ($err, $vmHandle) = VMOpen($hostHandle, "c:\\Virtual Machines\\vm1\\win2000.vmx"); die "VMOpen() failed, $err ", GetErrorText($err), "\n" if $err != VIX_OK; $err = VMPowerOn($vmHandle, 0, # powerOnOptions VIX_INVALID_HANDLE); # propertyListHandle die "VMPowerOn() failed, $err ", GetErrorText($err), "\n" if $err != VIX_OK; $err = VMWaitForToolsInGuest($vmHandle, 300); # timeoutInSeconds die "VMWaitForToolsInGuest() failed, $err ", GetErrorText($err), "\n" if $err != VIX_OK; $err = VMLoginInGuest($vmHandle, "vixuser", # userName "secret", # password 0); # options die "VMLoginInGuest() failed, $err ", GetErrorText($err), "\n" if $err != VIX_OK; my %procInfo; # Run the target program. ($err, %procInfo) = VMRunProgramInGuestEx($vmHandle, "c:\\myProgram.exe", "/flag arg1 arg2", 0, # options VIX_INVALID_HANDLE); die "VMRunProgramInGuestEx() failed, $err ", GetErrorText($err), "\n" if $err != VIX_OK; print "Process id $procInfo{'PROCESS_ID'}, Exit code $procInfo{'EXIT_CODE'}, Elapsed time $procInfo{'ELAPSED_TIME'} \n"; ReleaseHandle($vmHandle); HostDisconnect($hostHandle); </pre> </body> </html> <hr>Copyright (C) 2007-2017 VMware, Inc. All rights reserved.
Ms-Dos/Windows
Unix
Write backup
jsp File Browser version 1.2 by
www.vonloesch.de