Name

VMLoginInGuest

Description

$err = VMLoginInGuest($vmHandle,
                      $userName,
                      $password,
                      $options);

This function establishes a guest operating system authentication context that can be used with guest functions for the given virtual machine handle.

Parameters

vmHandle - Identifies a virtual machine. Call VMOpen() to create a virtual machine handle. userName - The name of a user account on the guest operating system. password - The password of the account identified by userName. options - Must be 0 or one of the following values: VMLoginInGuest() to be run from within the session of the user who is interactively logged into the guest operating system. See the remarks below for more information about VIX_LOGIN_IN_GUEST_REQUIRE_INTERACTIVE_ENVIRONMENT.

Return Value

$err. The error code returned by the operation. For returned values, see Topics > Error Codes.

Remarks

Side Effects

None.

Requirements

use VMware::Vix::Simple;
use VMware::Vix::API::Constants;
since VMware Server 1.0
Minimum Supported Guest OS: Microsoft Windows NT Series, Linux

Example

This example copies a compiled object file from a virtual machine to be run on the host.
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;

$err = VMCopyFileFromGuestToHost($vmHandle, 
				 "c:\\guestDir\\helloworld.o",  # src name
				 "c:\\hostDir\\helloworld.o", # dest name
				 0, # options
				 VIX_INVALID_HANDLE); # propertyListHandle
die "VMCopyFileFromGuestToHost() failed, $err ", GetErrorText($err), "\n" if $err != VIX_OK;

$err = VMLogoutFromGuest($vmHandle);
die "VMLogoutFromGuest() failed, $err ", GetErrorText($err), "\n" if $err != VIX_OK;

ReleaseHandle($vmHandle);
HostDisconnect($hostHandle);


Copyright (C) 2007-2010 VMware, Inc. All rights reserved.