Name

PowerOff

Description

HRESULT
PowerOff([in] LONG powerOffOptions,
         [in] ICallback* jobDoneCallback,
         [out,retval] IJob** powerJob);

This function powers off a virtual machine.

Parameters

powerOffOptions
Must be VixCOM.Constants.VIX_VMPOWEROP_NORMAL or VixCOM.Constants.VIX_VMPOWEROP_FROM_GUEST.
jobDoneCallback
An ICallback instance that will be called when the operation is complete.
powerJob
Returns an IJob object that describes the state of this asynchronous operation.

Return Value

HRESULT

Remarks

Side Effects

None.

Requirements

VixCOM.h, since VMware Workstation 6.0

Example


VBScript:
Dim lib
Dim host
Dim vm
Dim err
Dim results
Dim job

Set lib = CreateObject("VixCOM.VixLib")

Set job = lib.Connect(VixCOM.Constants.VIX_API_VERSION, VixCOM.Constants.VIX_SERVICEPROVIDER_VMWARE_WORKSTATION, Empty, 0, Empty, Empty, 0, Nothing, Nothing)

' results needs to be initialized before it's used, even if it's just going to be overwritten.
Set results = Nothing

err = job.Wait(Array(VixCOM.Constants.VIX_PROPERTY_JOB_RESULT_HANDLE), results)
If lib.ErrorIndicatesFailure(err) Then
   ' Handle the error...
End If

Set host = results(0)

Set job = host.OpenVM("C:\VMs\winxpprowithsp2\winxpprowithsp2.vmx", Nothing)
err = job.Wait(Array(VixCOM.Constants.VIX_PROPERTY_JOB_RESULT_HANDLE), results)
If lib.ErrorIndicatesFailure(err) Then
   ' Handle the error...
End If

Set vm = results(0)

' Assume this virtual machine is already running

Set job = vm.PowerOff(VixCOM.Constants.VIX_VMPOWEROP_FROM_GUEST, Nothing)
err = job.WaitWithoutResults()
If lib.ErrorIndicatesFailure(err) Then
   ' Handle the error...
End If

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