VirtualBox Main API
|
Classes | |
interface | IVirtualBoxErrorInfo |
The IVirtualBoxErrorInfo interface represents extended error information. More... | |
interface | INATNetwork |
interface | ICloudNetwork |
interface | IHostOnlyNetwork |
interface | IDHCPServer |
The IDHCPServer interface represents the VirtualBox DHCP server configuration. More... | |
interface | IDHCPConfig |
The DHCP server has several configuration levels: global, group and individual MAC. More... | |
interface | IDHCPGlobalConfig |
The global DHCP server configuration, see IDHCPServer::globalConfig. More... | |
interface | IDHCPGroupCondition |
interface | IDHCPGroupConfig |
A configuration that applies to a group of NICs. More... | |
interface | IDHCPIndividualConfig |
Configuration for a single NIC, either given directly by MAC address or by VM + adaptor slot number. More... | |
interface | IVirtualBox |
The IVirtualBox interface represents the main interface exposed by the product that provides virtual machine management. More... | |
interface | IVFSExplorer |
The VFSExplorer interface unifies access to different file system types. More... | |
interface | ICertificate |
X.509 certificate details. More... | |
interface | IAppliance |
Represents a platform-independent appliance in OVF format. More... | |
interface | IVirtualSystemDescription |
Represents one virtual system (machine) in an appliance. More... | |
interface | IUnattended |
The IUnattended interface represents the pipeline for preparing the Guest OS for fully automated install. More... | |
interface | IInternalMachineControl |
interface | IGraphicsAdapter |
The IGraphicsAdapter interface represents the graphics adapter of the virtual machine. More... | |
interface | IFirmwareSettings |
The IFirmwareSettings interface represents firmware settings of the virtual machine. More... | |
interface | ITrustedPlatformModule |
The ITrustedPlatformModule interface represents the settings of the virtual machine's trusted platform module. More... | |
interface | IRecordingScreenSettings |
The IRecordingScreenSettings interface represents recording settings of a single virtual screen. More... | |
interface | IRecordingSettings |
The IRecordingSettings interface represents recording settings of the virtual machine. More... | |
interface | IPCIAddress |
Address on the PCI bus. More... | |
interface | IPCIDeviceAttachment |
Information about PCI attachments. More... | |
interface | IUefiVariableStore |
The IUefiVariableStore interface allows inspecting and manipulating the content of an existing UEFI variable store in a NVRAM file. More... | |
interface | INvramStore |
Provides access to the NVRAM store collecting all permanent states from different sources (UEFI, TPM, etc.). More... | |
interface | IResourceStore |
Provides access to resources accessed by various device implementations and created when the VM is started (only the FDT currently). More... | |
interface | IPlatform |
Platform object for a virtual machine. More... | |
interface | IPlatformX86 |
The x86 specific platform properties for a virtual machine. More... | |
interface | IPlatformARM |
The ARM-specific platform properties for a virtual machine. More... | |
interface | IMachine |
The IMachine interface represents a virtual machine, or guest, created in VirtualBox. More... | |
interface | IEmulatedUSB |
Manages emulated USB devices. More... | |
interface | IVRDEServerInfo |
Contains information about the remote desktop (VRDE) server capabilities and status. More... | |
interface | IConsole |
The IConsole interface represents an interface to control virtual machine execution. More... | |
interface | IHostNetworkInterface |
Represents one of host's network interfaces. More... | |
interface | IHostVideoInputDevice |
Represents one of host's video capture devices, for example a webcam. More... | |
interface | IUpdateAgent |
Abstract parent interface for handling updateable software components. More... | |
interface | IHostUpdateAgent |
Implementation of the IUpdateAgent object for VirtualBox host updates. More... | |
interface | IHostDrivePartition |
The IHostDrivePartition interface represents the partition of the host drive. More... | |
interface | IHostDrive |
The IHostDrive interface represents the drive of the physical machine. More... | |
interface | IHostX86 |
The x86-specific interface for the physical host machine. More... | |
interface | IHost |
The IHost interface represents the physical machine that this VirtualBox installation runs on. More... | |
interface | ICPUProfile |
CPU profile. More... | |
interface | IPlatformProperties |
Properties of a specific virtualization platform. More... | |
interface | ISystemProperties |
The ISystemProperties interface represents global properties of the given VirtualBox installation. More... | |
interface | IGuestOSType |
Specifies a guest OS type and its recommendations. More... | |
interface | IAdditionsFacility |
Structure representing a Guest Additions facility. More... | |
interface | IDnDBase |
Base abstract interface for drag'n drop. More... | |
interface | IDnDSource |
Abstract interface for handling drag'n drop sources. More... | |
interface | IGuestDnDSource |
Implementation of the IDnDSource object for source drag'n drop operations on the guest. More... | |
interface | IDnDTarget |
Abstract interface for handling drag'n drop targets. More... | |
interface | IGuestDnDTarget |
Implementation of the IDnDTarget object for target drag'n drop operations on the guest. More... | |
interface | IGuestSession |
A guest session represents one impersonated user account in the guest, so every operation will use the same credentials specified when creating the session object via IGuest::createSession. More... | |
interface | IProcess |
Abstract parent interface for processes handled by VirtualBox. More... | |
interface | IGuestProcess |
Implementation of the IProcess object for processes the host has started in the guest. More... | |
interface | IDirectory |
Abstract parent interface for directories handled by VirtualBox. More... | |
interface | IGuestDirectory |
Implementation of the IDirectory object for directories in the guest. More... | |
interface | IFile |
Abstract parent interface for files handled by VirtualBox. More... | |
interface | IGuestFile |
Implementation of the IFile object for files in the guest. More... | |
interface | IFsInfo |
Abstract parent interface for VirtualBox file system information. More... | |
interface | IFsObjInfo |
Abstract parent interface for VirtualBox file system object information. More... | |
interface | IGuestFsInfo |
Represents the guest implementation of the IFsInfo object. More... | |
interface | IGuestFsObjInfo |
Represents the guest implementation of the IFsObjInfo object. More... | |
interface | IGuest |
The IGuest interface represents information about the operating system running inside the virtual machine. More... | |
interface | IProgress |
The IProgress interface is used to track and control asynchronous tasks within VirtualBox. More... | |
interface | IInternalProgressControl |
interface | ISnapshot |
The ISnapshot interface represents a snapshot of the virtual machine. More... | |
interface | IMediumAttachment |
The IMediumAttachment interface links storage media to virtual machines. More... | |
interface | IMedium |
The IMedium interface represents virtual storage for a machine's hard disks, CD/DVD or floppy drives. More... | |
interface | IMediumFormat |
The IMediumFormat interface represents a medium format. More... | |
interface | IDataStream |
The IDataStream interface is used to retrieve a data stream. More... | |
interface | IMediumIO |
The IMediumIO interface is used to access and modify the content of a medium. More... | |
interface | IToken |
The IToken interface represents a token passed to an API client, which triggers cleanup actions when it is explicitly released by calling the abandon method (preferred, as it is accurately defined when the release happens), or when the object reference count drops to 0. More... | |
interface | IKeyboard |
The IKeyboard interface represents the virtual machine's keyboard. More... | |
interface | IMousePointerShape |
The guest mouse pointer description. More... | |
interface | IMouse |
The IMouse interface represents the virtual machine's mouse. More... | |
interface | IDisplaySourceBitmap |
interface | IFramebuffer |
interface | IFramebufferOverlay |
The IFramebufferOverlay interface represents an alpha blended overlay for displaying status icons above an IFramebuffer. More... | |
interface | IGuestScreenInfo |
interface | IDisplay |
The IDisplay interface represents the virtual machine's display. More... | |
interface | INetworkAdapter |
Represents a virtual network adapter that is attached to a virtual machine. More... | |
interface | ISerialPort |
The ISerialPort interface represents the virtual serial port device. More... | |
interface | IParallelPort |
The IParallelPort interface represents the virtual parallel port device. More... | |
interface | IMachineDebugger |
interface | IUSBDeviceFilters |
interface | IUSBController |
interface | IUSBDevice |
The IUSBDevice interface represents a virtual USB device attached to the virtual machine. More... | |
interface | IUSBDeviceFilter |
The IUSBDeviceFilter interface represents a USB device filter used to perform actions on one or more USB devices. More... | |
interface | IHostUSBDevice |
The IHostUSBDevice interface represents a physical USB device attached to the host computer. More... | |
interface | IHostUSBDeviceFilter |
The IHostUSBDeviceFilter interface represents a global filter for a physical USB device used by the host computer. More... | |
interface | IUSBProxyBackend |
The USBProxyBackend interface represents a source for USB devices available to the host for attaching to the VM. More... | |
interface | IAudioAdapter |
The IAudioAdapter interface represents the virtual audio adapter of the virtual machine. More... | |
interface | IHostAudioDevice |
Represents an audio device provided by the host OS. More... | |
interface | IAudioSettings |
The IAudioSettings interface represents the audio settings for a virtual machine. More... | |
interface | IVRDEServer |
interface | ISharedFolder |
The ISharedFolder interface represents a folder in the host computer's file system accessible from the guest OS running inside a virtual machine using an associated logical name. More... | |
interface | IInternalSessionControl |
interface | ISession |
The ISession interface represents a client process and allows for locking virtual machines (represented by IMachine objects) to prevent conflicting changes to the machine. More... | |
interface | IStorageController |
Represents a storage controller that is attached to a virtual machine (IMachine). More... | |
interface | IManagedObjectRef |
Managed object reference. More... | |
interface | IWebsessionManager |
Websession manager. More... | |
interface | IPerformanceMetric |
The IPerformanceMetric interface represents parameters of the given performance metric. More... | |
interface | IPerformanceCollector |
The IPerformanceCollector interface represents a service that collects and stores performance metrics data. More... | |
interface | INATEngine |
Interface for managing a NAT engine which is used with a virtual machine. More... | |
interface | IExtPackPlugIn |
Interface for keeping information about a plug-in that ships with an extension pack. More... | |
interface | IExtPackBase |
Interface for querying information about an extension pack as well as accessing COM objects within it. More... | |
interface | IExtPack |
Interface for querying information about an extension pack as well as accessing COM objects within it. More... | |
interface | IExtPackFile |
Extension pack file (aka tarball, .vbox-extpack) representation returned by IExtPackManager::openExtPackFile. More... | |
interface | IExtPackManager |
Interface for managing VirtualBox Extension Packs. More... | |
interface | IBandwidthGroup |
Represents one bandwidth group. More... | |
interface | IBandwidthControl |
Controls the bandwidth groups of one machine used to cap I/O done by a VM. More... | |
interface | IGuestDebugControl |
Controls the guest debug settings of one virtual machine. More... | |
interface | IVirtualBoxClient |
Convenience interface for client applications. More... | |
interface | IEventSource |
Event source. More... | |
interface | IEventListener |
Event listener. More... | |
interface | IEvent |
Abstract parent interface for VirtualBox events. More... | |
interface | IReusableEvent |
Base abstract interface for all reusable events. More... | |
interface | IMachineEvent |
Base abstract interface for all machine events. More... | |
interface | IMachineStateChangedEvent |
Machine state change event. More... | |
interface | IExtPackInstalledEvent |
Extension pack installed event. More... | |
interface | IExtPackUninstalledEvent |
Extension pack uninstalled event. More... | |
interface | IMachineDataChangedEvent |
Any of the settings of the given machine has changed. More... | |
interface | IMediumRegisteredEvent |
The given medium was registered or unregistered within this VirtualBox installation. More... | |
interface | IMediumConfigChangedEvent |
The configuration of the given medium was changed (location, properties, child/parent or anything else). More... | |
interface | IMachineRegisteredEvent |
The given machine was registered or unregistered within this VirtualBox installation. More... | |
interface | ISessionStateChangedEvent |
The state of the session for the given machine was changed. More... | |
interface | IGuestPropertyChangedEvent |
Notification when a guest property has changed. More... | |
interface | ISnapshotEvent |
Base interface for all snapshot events. More... | |
interface | ISnapshotTakenEvent |
A new snapshot of the machine has been taken. More... | |
interface | ISnapshotDeletedEvent |
Snapshot of the given machine has been deleted. More... | |
interface | ISnapshotRestoredEvent |
Snapshot of the given machine has been restored. More... | |
interface | ISnapshotChangedEvent |
Snapshot properties (name and/or description) have been changed. More... | |
interface | IMousePointerShapeChangedEvent |
Notification when the guest mouse pointer shape has changed. More... | |
interface | IMouseCapabilityChangedEvent |
Notification when the mouse capabilities reported by the guest have changed. More... | |
interface | IKeyboardLedsChangedEvent |
Notification when the guest OS executes the KBD_CMD_SET_LEDS command to alter the state of the keyboard LEDs. More... | |
interface | IStateChangedEvent |
Notification when the execution state of the machine has changed. More... | |
interface | IAdditionsStateChangedEvent |
Notification when a Guest Additions property changes. More... | |
interface | INetworkAdapterChangedEvent |
Notification when a property of one of the virtual network adapters changes. More... | |
interface | IAudioAdapterChangedEvent |
Notification when a property of the audio adapter changes. More... | |
interface | ISerialPortChangedEvent |
Notification when a property of one of the virtual serial ports changes. More... | |
interface | IParallelPortChangedEvent |
Notification when a property of one of the virtual parallel ports changes. More... | |
interface | IStorageControllerChangedEvent |
Notification when a storage controllers changes. More... | |
interface | IMediumChangedEvent |
Notification when a medium attachment changes. More... | |
interface | IClipboardModeChangedEvent |
Notification when the shared clipboard mode changes. More... | |
interface | IClipboardFileTransferModeChangedEvent |
Notification when the shared clipboard file transfer mode changes. More... | |
interface | IClipboardEvent |
Abstract base interface for clipboard events. More... | |
interface | IClipboardErrorEvent |
Notification when a clipboard error occurred. More... | |
interface | IDnDModeChangedEvent |
Notification when the drag'n drop mode changes. More... | |
interface | ICPUChangedEvent |
Notification when a CPU changes. More... | |
interface | ICPUExecutionCapChangedEvent |
Notification when the CPU execution cap changes. More... | |
interface | IGuestKeyboardEvent |
Notification when guest keyboard event happens. More... | |
interface | IGuestMouseEvent |
Notification when guest mouse event happens. More... | |
interface | IGuestMultiTouchEvent |
Notification when guest touch screen event happens. More... | |
interface | IGuestSessionEvent |
Base abstract interface for all guest session events. More... | |
interface | IGuestSessionStateChangedEvent |
Notification when a guest session changed its state. More... | |
interface | IGuestSessionRegisteredEvent |
Notification when a guest session was registered or unregistered. More... | |
interface | IGuestProcessEvent |
Base abstract interface for all guest process events. More... | |
interface | IGuestProcessRegisteredEvent |
Notification when a guest process was registered or unregistered. More... | |
interface | IGuestProcessStateChangedEvent |
Notification when a guest process changed its state. More... | |
interface | IGuestProcessIOEvent |
Base abstract interface for all guest process input/output (IO) events. More... | |
interface | IGuestProcessInputNotifyEvent |
Notification when a guest process' stdin became available. More... | |
interface | IGuestProcessOutputEvent |
Notification when there is guest process output available for reading. More... | |
interface | IGuestDirectoryEvent |
Base abstract interface for all guest directory events. More... | |
interface | IGuestDirectoryRegisteredEvent |
Notification when a guest directory was registered or unregistered. More... | |
interface | IGuestDirectoryStateChangedEvent |
Notification when a guest directory changed its state. More... | |
interface | IGuestDirectoryReadEvent |
Notification when a directory entry has been read. More... | |
interface | IGuestFileEvent |
Base abstract interface for all guest file events. More... | |
interface | IGuestFileRegisteredEvent |
Notification when a guest file was registered or unregistered. More... | |
interface | IGuestFileStateChangedEvent |
Notification when a guest file changed its state. More... | |
interface | IGuestFileIOEvent |
Base abstract interface for all guest file input/output (IO) events. More... | |
interface | IGuestFileOffsetChangedEvent |
Notification when a guest file changed its current offset via IFile::seek. More... | |
interface | IGuestFileSizeChangedEvent |
Notification when a guest file changed its size via IFile::setSize. More... | |
interface | IGuestFileReadEvent |
Notification when data has been read from a guest file. More... | |
interface | IGuestFileWriteEvent |
Notification when data has been written to a guest file. More... | |
interface | IVRDEServerChangedEvent |
Notification when a property of the VRDE server changes. More... | |
interface | IVRDEServerInfoChangedEvent |
Notification when the status of the VRDE server changes. More... | |
interface | IRecordingStateChangedEvent |
Notification when the machine's recording state has changed. More... | |
interface | IRecordingScreenStateChangedEvent |
Notification when a screen recording state has changed. More... | |
interface | IUSBControllerChangedEvent |
Notification when a property of the virtual USB controllers changes. More... | |
interface | IUSBDeviceStateChangedEvent |
Notification when a USB device is attached to or detached from the virtual USB controller. More... | |
interface | ISharedFolderChangedEvent |
Notification when a shared folder is added or removed. More... | |
interface | IRuntimeErrorEvent |
Notification when an error happens during the virtual machine execution. More... | |
interface | IEventSourceChangedEvent |
Notification when an event source state changes (listener added or removed). More... | |
interface | IExtraDataChangedEvent |
Notification when machine specific or global extra data has changed. More... | |
interface | IVetoEvent |
Base abstract interface for veto events. More... | |
interface | IExtraDataCanChangeEvent |
Notification when someone tries to change extra data for either the given machine or (if null ) global extra data. More... | |
interface | ICanShowWindowEvent |
Notification when a call to IMachine::canShowConsoleWindow is made by a front-end to check if a subsequent call to IMachine::showConsoleWindow can succeed. More... | |
interface | IShowWindowEvent |
Notification when a call to IMachine::showConsoleWindow requests the console window to be activated and brought to foreground on the desktop of the host PC. More... | |
interface | INATRedirectEvent |
Notification when NAT redirect rule added or removed. More... | |
interface | IHostAudioDeviceChangedEvent |
Notification when a host audio device state has changed. More... | |
interface | IHostPCIDevicePlugEvent |
Notification when host PCI device is plugged/unplugged. More... | |
interface | IVBoxSVCAvailabilityChangedEvent |
Notification when VBoxSVC becomes unavailable (due to a crash or similar unexpected circumstances) or available again. More... | |
interface | IBandwidthGroupChangedEvent |
Notification when one of the bandwidth groups changed. More... | |
interface | IGuestMonitorChangedEvent |
Notification when the guest enables one of its monitors. More... | |
interface | IGuestUserStateChangedEvent |
Notification when a guest user changed its state. More... | |
interface | IStorageDeviceChangedEvent |
Notification when a storage device is attached or removed. More... | |
interface | INATNetworkChangedEvent |
interface | INATNetworkStartStopEvent |
interface | INATNetworkAlterEvent |
interface | INATNetworkCreationDeletionEvent |
interface | INATNetworkSettingEvent |
interface | INATNetworkPortForwardEvent |
interface | IHostNameResolutionConfigurationChangeEvent |
interface | IProgressEvent |
Base abstract interface for all progress events. More... | |
interface | IProgressCreatedEvent |
Notification of a new progress object creation/deletion. More... | |
interface | IProgressPercentageChangedEvent |
Progress state change event. More... | |
interface | IProgressTaskCompletedEvent |
Progress task completion event. More... | |
interface | ICursorPositionChangedEvent |
The guest reports cursor position data. More... | |
interface | IGuestAdditionsStatusChangedEvent |
The guest addition status changed. More... | |
interface | IGuestMonitorInfoChangedEvent |
The guest reports cursor position data. More... | |
interface | IUpdateAgentEvent |
Abstract base interface for update agent events. More... | |
interface | IUpdateAgentSettingsChangedEvent |
Notification when update agent settings have been changed. More... | |
interface | IUpdateAgentErrorEvent |
Notification when an update agent error occurred. More... | |
interface | IUpdateAgentAvailableEvent |
Notification when an update is available. More... | |
interface | IUpdateAgentStateChangedEvent |
Notification when an update agent state has been changed. More... | |
interface | IGuestDebugControlChangedEvent |
Notification when a property of the guest debug settings changes. More... | |
interface | IMachineGroupsChangedEvent |
The groups of the machine have changed. More... | |
interface | IStringArray |
When you need to return an array of strings asynchronously (under a progress) you cannot use by-value out parameter type="wstring" safearray="yes" dir="out" , hence this wrapper. More... | |
interface | IFormValue |
interface | IBooleanFormValue |
interface | IRangedIntegerFormValue |
interface | IRangedInteger64FormValue |
interface | IStringFormValue |
interface | IChoiceFormValue |
interface | IForm |
interface | IVirtualSystemDescriptionForm |
interface | ICloudNetworkGatewayInfo |
interface | ICloudNetworkEnvironmentInfo |
interface | ICloudMachine |
Virtual virtual machine (sic) in the cloud. More... | |
interface | ICloudClient |
interface | ICloudProfile |
interface | ICloudProvider |
interface | ICloudProviderManager |
interface | ICloudProviderListChangedEvent |
Each individual provider that is installed or uninstalled is reported as an ICloudProviderRegisteredEvent. More... | |
interface | ICloudProviderRegisteredEvent |
A cloud provider was installed or uninstalled. More... | |
interface | ICloudProviderUninstallEvent |
A cloud provider is about to be uninstalled. More... | |
interface | ICloudProfileRegisteredEvent |
interface | ICloudProfileChangedEvent |
interface | ILanguageChangedEvent |
interface | IVBoxSVCRegistration |
Implemented by the VirtualBox class factory and registered with VBoxSDS so it can retrieve IVirtualBox on behalf of other VBoxSVCs. More... | |
interface | IVirtualBoxSDS |
The IVirtualBoxSDS interface represents the system-wide directory service helper. More... | |
Variables | |
const HRESULT | VBOX_E_OBJECT_NOT_FOUND = 0x80BB0001 |
Object corresponding to the supplied arguments does not exist. | |
const HRESULT | VBOX_E_INVALID_VM_STATE = 0x80BB0002 |
Current virtual machine state prevents the operation. | |
const HRESULT | VBOX_E_VM_ERROR = 0x80BB0003 |
Virtual machine error occurred attempting the operation. | |
const HRESULT | VBOX_E_FILE_ERROR = 0x80BB0004 |
File not accessible or erroneous file contents. | |
const HRESULT | VBOX_E_IPRT_ERROR = 0x80BB0005 |
Runtime subsystem error. | |
const HRESULT | VBOX_E_PDM_ERROR = 0x80BB0006 |
Pluggable Device Manager error. | |
const HRESULT | VBOX_E_INVALID_OBJECT_STATE = 0x80BB0007 |
Current object state prohibits operation. | |
const HRESULT | VBOX_E_HOST_ERROR = 0x80BB0008 |
Host operating system related error. | |
const HRESULT | VBOX_E_NOT_SUPPORTED = 0x80BB0009 |
Requested operation is not supported. | |
const HRESULT | VBOX_E_XML_ERROR = 0x80BB000A |
Invalid XML found. | |
const HRESULT | VBOX_E_INVALID_SESSION_STATE = 0x80BB000B |
Current session state prohibits operation. | |
const HRESULT | VBOX_E_OBJECT_IN_USE = 0x80BB000C |
Object being in use prohibits operation. | |
const HRESULT | VBOX_E_PASSWORD_INCORRECT = 0x80BB000D |
A provided password was incorrect. | |
const HRESULT | VBOX_E_MAXIMUM_REACHED = 0x80BB000E |
A maximum has been reached. | |
const HRESULT | VBOX_E_GSTCTL_GUEST_ERROR = 0x80BB000F |
Guest Control reported an error from the guest side. | |
const HRESULT | VBOX_E_TIMEOUT = 0x80BB0010 |
The operation ran into an explicitly requested timeout. | |
const HRESULT | VBOX_E_DND_ERROR = 0x80BB0011 |
A drag and drop error has occurred. | |
const HRESULT | VBOX_E_PLATFORM_ARCH_NOT_SUPPORTED = 0x80BB0012 |
Platform architecture is not supported. | |
const HRESULT | VBOX_E_RECORDING_ERROR = 0x80BB0013 |
A recording error has occurred. | |
enum SettingsVersion |
Settings version of VirtualBox settings files.
This is written to the "version" attribute of the root "VirtualBox" element in the settings file XML and indicates which VirtualBox version wrote the file.
{6AD3DA60-5ED2-49CD-B882-96A72308EBF6}
enum AccessMode |
enum MachineState |
Virtual machine execution state.
This enumeration represents possible values of the IMachine::state attribute.
Below is the basic virtual machine state diagram. It shows how the state changes during virtual machine execution. The text in square braces shows a method of the IConsole or IMachine interface that performs the given state transition.
+---------[powerDown()] <- Stuck <--[failure]-+ V | +-> PoweredOff --+-->[powerUp()]--> Starting --+ | +-----[resume()]-----+ | | | | V | | Aborted <----+ +--> Running --[pause()]--> Paused | | ^ | ^ | | AbortedSaved <-----------[failure]-----<----+ | | | | | | | | | | | | +-------------+ | | | | | | V | | | | | | Saved --------[powerUp()]-----> Restoring -+ | | | | | ^ | | | | | | +-----------------------------------------+-|-------------------+ + | | | | | | | +- OnlineSnapshotting <--[takeSnapshot()]<--+---------------------+ | | | | | +-------- Saving <--------[saveState()]<----------+---------------------+ | | | +-------------- Stopping -------[powerDown()]<----------+---------------------+
Note that states to the right of PoweredOff, Aborted, AbortedSaved, and Saved in the above diagram are called online VM states. These states represent the virtual machine which is being executed in a dedicated process (usually with a GUI window attached to it where you can see the activity of the virtual machine and interact with it). There are two special pseudo-states, FirstOnline and LastOnline, that can be used in relational expressions to detect if the given machine state is online or not:
if (machine.GetState() >= MachineState_FirstOnline && machine.GetState() <= MachineState_LastOnline) { ...the machine is being executed... }
When the virtual machine is in one of the online VM states (that is, being executed), only a few machine settings can be modified. Methods working with such settings contain an explicit note about that. An attempt to change any other setting or perform a modifying operation during this time will result in the VBOX_E_INVALID_VM_STATE
error.
All online states except Running, Paused and Stuck are transitional: they represent temporary conditions of the virtual machine that will last as long as the operation that initiated such a condition.
The Stuck state is a special case. It means that execution of the machine has reached the "Guru Meditation" condition. This condition indicates an internal VMM (virtual machine manager) failure which may happen as a result of either an unhandled low-level virtual hardware exception or one of the recompiler exceptions (such as the too-many-traps condition).
Note also that any online VM state may transit to the Aborted state. This happens if the process that is executing the virtual machine terminates unexpectedly (for example, crashes). Other than that, the Aborted state is equivalent to PoweredOff.
There are also a few additional state diagrams that do not deal with virtual machine execution and therefore are shown separately. The states shown on these diagrams are called offline VM states (this includes PoweredOff, Aborted, AbortedSaved and Saved too).
The first diagram shows what happens when a lengthy setup operation is being executed (such as IMachine::attachDevice).
+----------------------------------(same state as before the call)------+ | | +-> PoweredOff --+ | | | | |-> Aborted -----+-->[lengthy VM configuration call] --> SettingUp -----+ | | +-> Saved -------+
The next two diagrams demonstrate the process of taking a snapshot of a powered off virtual machine, restoring the state to that as of a snapshot or deleting a snapshot, respectively.
+----------------------------------(same state as before the call)------+ | | +-> PoweredOff --+ | | +-->[takeSnapshot()] ------------------> Snapshotting -+ +-> Aborted -----+ +-> PoweredOff --+ | | | Aborted -----+-->[restoreSnapshot() ]-------> RestoringSnapshot -+ | | [deleteSnapshot() ]-------> DeletingSnapshot --+ +-> Saved -------+ | | | +---(Saved if restored from an online snapshot, PoweredOff otherwise)---+
{00BC01B5-00A4-48DB-000A-9061008357AA}
enum SessionState |
Session state.
This enumeration represents possible values of IMachine::sessionState and ISession::state attributes.
{CF2700C0-EA4B-47AE-9725-7810114B94D8}
Enumerator | |
---|---|
SessionState_Null | Null value (never used by the API). |
SessionState_Unlocked | In IMachine::sessionState, this means that the machine is not locked for any sessions. In ISession::state, this means that no machine is currently locked for this session. |
SessionState_Locked | In IMachine::sessionState, this means that the machine is currently locked for a session, whose process identifier can then be found in the IMachine::sessionPID attribute. In ISession::state, this means that a machine is currently locked for this session, and the mutable machine object can be found in the ISession::machine attribute (see IMachine::lockMachine for details). |
SessionState_Spawning | A new process is being spawned for the machine as a result of IMachine::launchVMProcess call. This state also occurs as a short transient state during an IMachine::lockMachine call. |
SessionState_Unlocking | The session is being unlocked. |
enum PlatformArchitecture |
Platform architecture.
{36E21926-1713-413D-8CF5-2F169B2CBCF3}
Enumerator | |
---|---|
PlatformArchitecture_None | No platform selected. Never used by the API. |
PlatformArchitecture_x86 | x86-based platform (AMD64 / x86). Valid CPUArchitecture choices: CPUArchitecture_AMD64, CPUArchitecture_x86 |
PlatformArchitecture_ARM | ARM-based platform (AArch32, AArch64). Valid CPUArchitecture choices: CPUArchitecture_ARMv8_32, CPUArchitecture_ARMv8_64 |
enum CPUArchitecture |
Basic CPU architecture types.
{12906C63-9967-49C8-BA5A-6521ADAF0185}
enum CPUPropertyTypeX86 |
Virtual CPU property type for x86-based CPUs.
This enumeration represents possible values of the IPlatformX86 get- and setCPUProperty methods.
{A754B765-3687-4A68-ABB9-78DCF4C07D5F}
enum HWVirtExPropertyType |
Hardware virtualization property type.
This enumeration represents possible values for the IPlatformX86::getHWVirtExProperty and IPlatformX86::setHWVirtExProperty methods.
{00069D9C-00B5-460C-00DD-64250024F7AA}
Enumerator | |
---|---|
HWVirtExPropertyType_Null | Null value (never used by the API). |
HWVirtExPropertyType_Enabled | Whether hardware virtualization (VT-x/AMD-V) is enabled at all. If such extensions are not available, they will not be used. |
HWVirtExPropertyType_VPID | Whether VT-x VPID is enabled. If this extension is not available, it will not be used. |
HWVirtExPropertyType_NestedPaging | Whether Nested Paging is enabled. If this extension is not available, it will not be used. |
HWVirtExPropertyType_UnrestrictedExecution | Whether VT-x unrestricted execution is enabled. If this feature is not available, it will not be used. |
HWVirtExPropertyType_LargePages | Whether large page allocation is enabled; requires nested paging and a 64-bit host. |
HWVirtExPropertyType_Force | Whether the VM should fail to start if hardware virtualization (VT-x/AMD-V) cannot be used. If not set, there will be an automatic fallback to software virtualization. |
HWVirtExPropertyType_UseNativeApi | Use the native hypervisor API instead of the VirtualBox one (HM) for VT-X/AMD-V. This is ignored if HWVirtExPropertyType_Enabled isn't set. |
HWVirtExPropertyType_VirtVmsaveVmload | Whether AMD-V Virtualized VMSAVE/VMLOAD is enabled. If this feature is not available, it will not be used. |
enum ParavirtProvider |
The paravirtualized guest interface provider.
This enumeration represents possible values for the IMachine::paravirtProvider attribute.
{696453EC-3742-4A05-BEAD-658CCBF2C944}
enum LockType |
Used with IMachine::lockMachine.
{678AAF14-2815-4C3E-B20A-E86ED0216498}
enum SessionType |
Session type.
This enumeration represents possible values of the ISession::type attribute.
{A13C02CB-0C2C-421E-8317-AC0E8AAA153A}
Enumerator | |
---|---|
SessionType_Null | Null value (never used by the API). |
SessionType_WriteLock | Session has acquired an exclusive write lock on a machine using IMachine::lockMachine. |
SessionType_Remote | Session has launched a VM process using IMachine::launchVMProcess |
SessionType_Shared | Session has obtained a link to another session using IMachine::lockMachine |
enum DeviceType |
Device type.
{CB977BE1-D1FB-41F8-AD7E-951736C6CB3E}
Enumerator | |
---|---|
DeviceType_Null | Null value, may also mean "no device" (not allowed for IConsole::getDeviceActivity). |
DeviceType_Floppy | Floppy device. |
DeviceType_DVD | CD/DVD-ROM device. |
DeviceType_HardDisk | Hard disk device. |
DeviceType_Network | Network device. |
DeviceType_USB | USB device. |
DeviceType_SharedFolder | Shared folder device. |
DeviceType_Graphics3D | Graphics device 3D activity. |
DeviceType_End | End of valid device types (exclusive). Used for invalid validation and such. |
enum DeviceActivity |
Device activity for IConsole::getDeviceActivity.
{6FC8AEAA-130A-4EB5-8954-3F921422D707}
Enumerator | |
---|---|
DeviceActivity_Null | |
DeviceActivity_Idle | |
DeviceActivity_Reading | |
DeviceActivity_Writing |
enum ClipboardMode |
enum DnDMode |
enum Scope |
enum FirmwareBootMenuMode |
enum APICMode |
enum ProcessorFeature |
enum FirmwareType |
Firmware type.
{B903F264-C230-483E-AC74-2B37CE60D371}
enum PointingHIDType |
Type of pointing device used in a virtual machine.
{B3FD8215-6870-4E61-B6D9-2998FA625DE0}
enum KeyboardHIDType |
Type of keyboard device used in a virtual machine.
{383E43D7-5C7C-4EC8-9CB8-EDA1BCCD6699}
enum BitmapFormat |
Format of a bitmap.
Generic values for formats used by the source bitmap, the screen shot or image update APIs.
{AFB2BF39-8B1E-4F9F-8948-D1B887F83EB0}
enum PartitioningType |
enum PartitionType |
{84A6629C-8E9C-474C-ADBB-21995671597F}
enum DHCPOption |
Enumerator | |
---|---|
DHCPOption_SubnetMask | IPv4 netmask. Set to IDHCPServer::networkMask by default. |
DHCPOption_TimeOffset | UTC offset in seconds (32-bit decimal value). |
DHCPOption_Routers | Space separated list of IPv4 router addresses. |
DHCPOption_TimeServers | Space separated list of IPv4 time server (RFC 868) addresses. |
DHCPOption_NameServers | Space separated list of IPv4 name server (IEN 116) addresses. |
DHCPOption_DomainNameServers | Space separated list of IPv4 DNS addresses. |
DHCPOption_LogServers | Space separated list of IPv4 log server addresses. |
DHCPOption_CookieServers | Space separated list of IPv4 cookie server (RFC 865) addresses. |
DHCPOption_LPRServers | Space separated list of IPv4 line printer server (RFC 1179) addresses. |
DHCPOption_ImpressServers | Space separated list of IPv4 imagen impress server addresses. |
DHCPOption_ResourseLocationServers | Space separated list of IPv4 resource location (RFC 887) addresses. |
DHCPOption_HostName | The client name. See RFC 1035 for character limits. |
DHCPOption_BootFileSize | Number of 512 byte blocks making up the boot file (16-bit decimal value). |
DHCPOption_MeritDumpFile | Client core file. |
DHCPOption_DomainName | Domain name for the client. |
DHCPOption_SwapServer | IPv4 address of the swap server that the client should use. |
DHCPOption_RootPath | The path to the root disk the client should use. |
DHCPOption_ExtensionPath | Path to a file containing additional DHCP options (RFC2123). |
DHCPOption_IPForwarding | Whether IP forwarding should be enabled by the client (boolean). |
DHCPOption_OptNonLocalSourceRouting | Whether non-local datagrams should be forwarded by the client (boolean) |
DHCPOption_PolicyFilter | List of IPv4 addresses and masks paris controlling non-local source routing. |
DHCPOption_MaxDgramReassemblySize | The maximum datagram size the client should reassemble (16-bit decimal value). |
DHCPOption_DefaultIPTTL | The default time-to-leave on outgoing (IP) datagrams (8-bit decimal value). |
DHCPOption_PathMTUAgingTimeout | RFC1191 path MTU discovery timeout value in seconds (32-bit decimal value). |
DHCPOption_PathMTUPlateauTable | RFC1191 path MTU discovery size table, sorted in ascending order (list of 16-bit decimal values). |
DHCPOption_InterfaceMTU | The MTU size for the interface (16-bit decimal value). |
DHCPOption_AllSubnetsAreLocal | Indicates whether the MTU size is the same for all subnets (boolean). |
DHCPOption_BroadcastAddress | Broadcast address (RFC1122) for the client to use (IPv4 address). |
DHCPOption_PerformMaskDiscovery | Whether to perform subnet mask discovery via ICMP (boolean). |
DHCPOption_MaskSupplier | Whether to respond to subnet mask requests via ICMP (boolean). |
DHCPOption_PerformRouterDiscovery | Whether to perform router discovery (RFC1256) (boolean). |
DHCPOption_RouterSolicitationAddress | Where to send router solicitation requests (RFC1256) (IPv4 address). |
DHCPOption_StaticRoute | List of network and router address pairs addresses. |
DHCPOption_TrailerEncapsulation | Whether to negotiate the use of trailers for ARP (RTF893) (boolean). |
DHCPOption_ARPCacheTimeout | The timeout in seconds for ARP cache entries (32-bit decimal value). |
DHCPOption_EthernetEncapsulation | Whether to use IEEE 802.3 (RTF1042) rather than of v2 (RFC894) ethernet encapsulation (boolean). |
DHCPOption_TCPDefaultTTL | Default time-to-live for TCP sends (non-zero 8-bit decimal value). |
DHCPOption_TCPKeepaliveInterval | The interface in seconds between TCP keepalive messages (32-bit decimal value). |
DHCPOption_TCPKeepaliveGarbage | Whether to include a byte of garbage in TCP keepalive messages for backward compatibility (boolean). |
DHCPOption_NISDomain | The NIS (Sun Network Information Services) domain name (string). |
DHCPOption_NISServers | Space separated list of IPv4 NIS server addresses. |
DHCPOption_NTPServers | Space separated list of IPv4 NTP (RFC1035) server addresses. |
DHCPOption_VendorSpecificInfo | Vendor specific information. Only accessible using DHCPOptionEncoding_Hex. |
DHCPOption_NetBIOSNameServers | Space separated list of IPv4 NetBIOS name server (NBNS) addresses (RFC1001,RFC1002). |
DHCPOption_NetBIOSDatagramServers | Space separated list of IPv4 NetBIOS datagram distribution server (NBDD) addresses (RFC1001,RFC1002). |
DHCPOption_NetBIOSNodeType | NetBIOS node type (RFC1001,RFC1002): 1=B-node, 2=P-node, 4=M-node, and 8=H-node (8-bit decimal value). |
DHCPOption_NetBIOSScope | NetBIOS scope (RFC1001,RFC1002). Only accessible using DHCPOptionEncoding_Hex. |
DHCPOption_XWindowsFontServers | Space separated list of IPv4 X windows font server addresses. |
DHCPOption_XWindowsDisplayManager | Space separated list of IPv4 X windows display manager addresses. |
DHCPOption_NetWareIPDomainName | Netware IP domain name (RFC2242) (string). |
DHCPOption_NetWareIPInformation | Netware IP information (RFC2242). Only accessible using DHCPOptionEncoding_Hex. |
DHCPOption_NISPlusDomain | The NIS+ domain name (string). |
DHCPOption_NISPlusServers | Space separated list of IPv4 NIS+ server addresses. |
DHCPOption_TFTPServerName | TFTP server name (string). |
DHCPOption_BootfileName | Bootfile name (string). |
DHCPOption_MobileIPHomeAgents | Space separated list of IPv4 mobile IP agent addresses. |
DHCPOption_SMTPServers | Space separated list of IPv4 simple mail transport protocol (SMPT) server addresses. |
DHCPOption_POP3Servers | Space separated list of IPv4 post office protocol 3 (POP3) server addresses. |
DHCPOption_NNTPServers | Space separated list of IPv4 network news transport protocol (NTTP) server addresses. |
DHCPOption_WWWServers | Space separated list of default IPv4 world wide web (WWW) server addresses. |
DHCPOption_FingerServers | Space separated list of default IPv4 finger server addresses. |
DHCPOption_IRCServers | Space separated list of default IPv4 internet relay chat (IRC) server addresses. |
DHCPOption_StreetTalkServers | Space separated list of IPv4 StreetTalk server addresses. |
DHCPOption_STDAServers | Space separated list of IPv4 StreetTalk directory assistance (STDA) server addresses. |
DHCPOption_SLPDirectoryAgent | Addresses of one or more service location protocol (SLP) directory agent, and an indicator of whether their use is mandatory. Only accessible using DHCPOptionEncoding_Hex. |
DHCPOption_SLPServiceScope | List of service scopes for the service location protocol (SLP) and whether using the list is mandator. Only accessible using DHCPOptionEncoding_Hex. |
DHCPOption_DomainSearch | Domain search list, see RFC3397 and section 4.1.4 in RFC1035 for encoding. Only accessible using DHCPOptionEncoding_Hex. |
enum DHCPOptionEncoding |
enum DHCPConfigScope |
enum VFSType |
enum ImportOptions |
Import options, used with IAppliance::importMachines.
{0A981523-3B20-4004-8EE3-DFD322202ACE}
enum ExportOptions |
Export options, used with IAppliance::write.
{8F45EB08-FD34-41EE-AF95-A880BDEE5554}
enum CertificateVersion |
Used with IVirtualSystemDescription to describe the type of a configuration value.
{D171D08C-F7BF-4BEE-932F-FFBF998F7AC4}
Enumerator | |
---|---|
VirtualSystemDescriptionType_Ignore | |
VirtualSystemDescriptionType_OS | |
VirtualSystemDescriptionType_Name | |
VirtualSystemDescriptionType_Product | |
VirtualSystemDescriptionType_Vendor | |
VirtualSystemDescriptionType_Version | |
VirtualSystemDescriptionType_ProductUrl | |
VirtualSystemDescriptionType_VendorUrl | |
VirtualSystemDescriptionType_Description | |
VirtualSystemDescriptionType_License | |
VirtualSystemDescriptionType_Miscellaneous | |
VirtualSystemDescriptionType_CPU | |
VirtualSystemDescriptionType_Memory | |
VirtualSystemDescriptionType_HardDiskControllerIDE | |
VirtualSystemDescriptionType_HardDiskControllerSATA | |
VirtualSystemDescriptionType_HardDiskControllerSCSI | |
VirtualSystemDescriptionType_HardDiskControllerSAS | |
VirtualSystemDescriptionType_HardDiskImage | |
VirtualSystemDescriptionType_Floppy | |
VirtualSystemDescriptionType_CDROM | |
VirtualSystemDescriptionType_NetworkAdapter | |
VirtualSystemDescriptionType_USBController | |
VirtualSystemDescriptionType_SoundCard | |
VirtualSystemDescriptionType_SettingsFile | Optional, may be unset by the API caller. If this is changed by the API caller it defines the absolute path of the VM settings file and therefore also the VM folder with highest priority. |
VirtualSystemDescriptionType_BaseFolder | Optional, may be unset by the API caller. If set (and VirtualSystemDescriptionType_SettingsFile is not changed), defines the VM base folder (taking the primary group into account if also set). |
VirtualSystemDescriptionType_PrimaryGroup | Optional, empty by default and may be unset by the API caller. Defines the primary group of the VM after import. May influence the selection of the VM folder. Additional groups may be configured later using IMachine::groups, after importing. |
VirtualSystemDescriptionType_CloudInstanceShape | |
VirtualSystemDescriptionType_CloudDomain | |
VirtualSystemDescriptionType_CloudBootDiskSize | |
VirtualSystemDescriptionType_CloudBucket | |
VirtualSystemDescriptionType_CloudOCIVCN | |
VirtualSystemDescriptionType_CloudPublicIP | |
VirtualSystemDescriptionType_CloudProfileName | |
VirtualSystemDescriptionType_CloudOCISubnet | |
VirtualSystemDescriptionType_CloudKeepObject | |
VirtualSystemDescriptionType_CloudLaunchInstance | |
VirtualSystemDescriptionType_CloudInstanceId | |
VirtualSystemDescriptionType_CloudImageId | |
VirtualSystemDescriptionType_CloudInstanceState | |
VirtualSystemDescriptionType_CloudImageState | |
VirtualSystemDescriptionType_CloudInstanceDisplayName | |
VirtualSystemDescriptionType_CloudImageDisplayName | |
VirtualSystemDescriptionType_CloudOCILaunchMode | |
VirtualSystemDescriptionType_CloudPrivateIP | |
VirtualSystemDescriptionType_CloudBootVolumeId | |
VirtualSystemDescriptionType_CloudOCIVCNCompartment | |
VirtualSystemDescriptionType_CloudOCISubnetCompartment | |
VirtualSystemDescriptionType_CloudPublicSSHKey | |
VirtualSystemDescriptionType_BootingFirmware | |
VirtualSystemDescriptionType_CloudInitScriptPath | |
VirtualSystemDescriptionType_CloudCompartmentId | |
VirtualSystemDescriptionType_CloudShapeCpus | |
VirtualSystemDescriptionType_CloudShapeMemory | |
VirtualSystemDescriptionType_CloudInstanceMetadata | |
VirtualSystemDescriptionType_CloudInstanceFreeFormTags | |
VirtualSystemDescriptionType_CloudImageFreeFormTags | |
VirtualSystemDescriptionType_HardDiskControllerVirtioSCSI | |
VirtualSystemDescriptionType_HardDiskControllerNVMe |
Used with IVirtualSystemDescription::getValuesByType to describe the value type to fetch.
{56D9403F-3425-4118-9919-36F2A9B8C77C}
Enumerator | |
---|---|
VirtualSystemDescriptionValueType_Reference | |
VirtualSystemDescriptionValueType_Original | |
VirtualSystemDescriptionValueType_Auto | |
VirtualSystemDescriptionValueType_ExtraConfig |
enum TpmType |
TPM type enumeration.
{C669B9F7-A547-42B6-8464-636AA53401EB}
enum RecordingDestination |
enum RecordingFeature |
enum RecordingAudioCodec |
Recording audio codec enumeration.
{16C42BE8-1713-4717-A8B9-C65A6549FBCD}
Recording codec deadline.
How (and if at all) this deadline is being implemented depends on the codec being used.
{53627AE1-31CF-4303-9CD5-0C22FD2637CF}
enum RecordingVideoCodec |
Recording video codec enumeration.
{93791063-3E8C-4310-987C-DDB43FF03FFE}
Recording video scaling method enumeration.
{0DD1127D-4F62-4B82-BEEE-91086A9F1D24}
Recording video rate control mode enumeration.
{D07A33AC-B4EA-4917-942D-C03BE14FBE2F}
enum SignatureType |
Possible variable attributes.
More than one flag may be set.
{CDA505EC-B444-4AEF-B55C-B687717BDAC5}
Graphics controller type, used with IGraphicsAdapter::graphicsControllerType.
{E1379BAD-AE01-493D-ABF5-740A95C41676}
enum GraphicsFeature |
enum CleanupMode |
Cleanup mode, used with IMachine::unregister.
{67897C50-7CCA-47A9-83F6-CE8FD8EB5441}
enum CloneMode |
Clone mode, used with IMachine::cloneTo.
{A7A159FE-5096-4B8D-8C3C-D033CB0B35A8}
enum CloneOptions |
Clone options, used with IMachine::cloneTo.
{22243F8E-96AB-497C-8CF0-F40A566C630B}
enum AutostopType |
Autostop types, used with IMachine::autostopType.
{6BB96740-CF34-470D-AAB2-2CD48EA2E10E}
enum VMProcPriority |
Virtual machine process priorities.
{6FA72DD5-19B7-46BA-BC52-F223C98C7D80}
enum IommuType |
The IOMMU type.
This enumeration represents possible values for the IPlatform::iommuType attribute.
{F47339CB-B94E-48FE-B507-2900103D7B9F}
Enumerator | |
---|---|
IommuType_None | No IOMMU is present. |
IommuType_Automatic | No IOMMU is present. |
IommuType_AMD | An AMD IOMMU. |
IommuType_Intel | An Intel IOMMU. |
enum VMExecutionEngine |
The main execution engine of a VM.
{69485F52-5CD3-40C9-946F-AE7D5C50798B}
Enumerator | |
---|---|
VMExecutionEngine_NotSet | Has not yet been set (try again later), for reading the actual used execution engine from IMachineDebugger::executionEngine. This can not be set through IMachine::VMExecutionEngine. |
VMExecutionEngine_Default | Use the default/best available option for the host. This will never be returned by IMachineDebugger::executionEngine. |
VMExecutionEngine_HwVirt | Hardware assisted virtualization through HM. Only for x86-based hosts. |
VMExecutionEngine_NativeApi | Hardware assisted virtualization thru native API (NEM). |
VMExecutionEngine_Interpreter | CPU emulation using the interpreter. |
VMExecutionEngine_Recompiler | CPU emulation using the recompiler. |
Type of encapsulation.
Ethernet encapsulation includes both wired and wireless Ethernet connections.
{1AA54AAF-2497-45A2-BFB1-8EB225E93D5B}
Current status of the interface.
{CC474A69-2710-434B-8D99-C38E5D5A6F41}
enum UpdateChannel |
enum UpdateSeverity |
enum UpdateState |
enum ProxyMode |
Proxy setting: System (default), NoProxy and Manual.
{885264B3-B517-40FC-CE46-36E3BAE895A4}
Enumerator | |
---|---|
ProxyMode_System | Use the system proxy settings as far as possible. |
ProxyMode_NoProxy | Direct connection to the Internet. |
ProxyMode_Manual | Use the manual proxy from ISystemProperties::proxyURL. |
Guest Additions facility IDs.
{C4B10D74-DD48-4FF4-9A40-785A2A389ADE}
Guest Additions facility classes.
{446451B2-C88D-4E5D-84C9-91BC7F533F5F}
Guest Additions facility states.
{CE06F9E1-394E-4FE9-9368-5A88C567DBDE}
Guest Additions run level type.
{A25417EE-A9DD-4F5B-B0DC-377860087754}
enum AdditionsUpdateFlag |
Guest Additions update flags.
{726A818D-18D6-4389-94E8-3E9E6826171A}
enum GuestShutdownFlag |
Guest shutdown flags.
{28D19C9C-5862-4930-B29A-F117712B4864}
enum GuestSessionStatus |
Guest session status.
This enumeration represents possible values of the IGuestSession::status attribute.
{AC2669DA-4624-44F2-85B5-0B0BFB8D8673}
Guest session waiting flags.
{BB7A372A-F635-4E11-A81A-E707F3A52EF5}
Guest session waiting results.
Depending on the session waiting flags (for more information see GuestSessionWaitForFlag) the waiting result can vary based on the session's current status.
To wait for a guest session to terminate after it has been created by IGuest::createSession one would specify GuestSessionWaitResult_Terminate.
{C0F6A8A5-FDB6-42BF-A582-56C6F82BCD2D}
Enumerator | |
---|---|
GuestSessionWaitResult_None | No result was returned. Not being used. |
GuestSessionWaitResult_Start | The guest session has been started. |
GuestSessionWaitResult_Terminate | The guest session has been terminated. |
GuestSessionWaitResult_Status | The guest session has changed its status. The status then can be retrieved via IGuestSession::status. |
GuestSessionWaitResult_Error | Error while executing the process. |
GuestSessionWaitResult_Timeout | The waiting operation timed out. This also will happen when no event has been occurred matching the current waiting flags in a IGuestSession::waitFor call. |
GuestSessionWaitResult_WaitFlagNotSupported | A waiting flag specified in the IGuestSession::waitFor call is not supported by the guest. |
enum GuestUserState |
State a guest user has been changed to.
{B2A82B02-FD3D-4FC2-BA84-6BA5AC8BE198}
enum FileSeekOrigin |
What a file seek (IFile::seek) is relative to.
{AD32F789-4279-4530-979C-F16892E1C263}
enum ProcessInputFlag |
enum ProcessOutputFlag |
enum ProcessWaitForFlag |
Process waiting flags.
{23B550C7-78E1-437E-98F0-65FD9757BCD2}
Enumerator | |
---|---|
ProcessWaitForFlag_None | No waiting flags specified. Do not use this. |
ProcessWaitForFlag_Start | Wait for the process being started. |
ProcessWaitForFlag_Terminate | Wait for the process being terminated. |
ProcessWaitForFlag_StdIn | Wait for stdin becoming available. Not implemented; will currently return ProcessWaitResult_WaitFlagNotSupported. Writing process input can be performed via IProcess::write or waiting for the IGuestProcessInputNotifyEvent event. |
ProcessWaitForFlag_StdOut | Wait for data becoming available on stdout. Not implemented; will currently return ProcessWaitResult_WaitFlagNotSupported. Reading process stdout output can be performed via IProcess::read or waiting for the IGuestProcessOutputEvent event. |
ProcessWaitForFlag_StdErr | Wait for data becoming available on stderr. Not implemented; will currently return ProcessWaitResult_WaitFlagNotSupported. Reading process stderr output can be performed via IProcess::read or waiting for the IGuestProcessOutputEvent event. |
enum ProcessWaitResult |
Process waiting results.
Depending on the process waiting flags (for more information see ProcessWaitForFlag) the waiting result can vary based on the processes' current status.
To wait for a guest process to terminate after it has been created by IGuestSession::processCreate or IGuestSession::processCreateEx one would specify ProcessWaitFor_Terminate.
If a guest process has been started with ProcessCreateFlag_WaitForStdOut a client can wait with ProcessWaitResult_StdOut for new data to arrive on stdout; same applies for ProcessCreateFlag_WaitForStdErr and ProcessWaitResult_StdErr.
{40719CBE-F192-4FE9-A231-6697B3C8E2B4}
Enumerator | |
---|---|
ProcessWaitResult_None | No result was returned. Not being used. |
ProcessWaitResult_Start | The process has been started. |
ProcessWaitResult_Terminate | The process has been terminated. |
ProcessWaitResult_Status | The process has changed its status. The status then can be retrieved via IProcess::status. |
ProcessWaitResult_Error | Error while executing the process. |
ProcessWaitResult_Timeout | The waiting operation timed out. Also use if the guest process has timed out in the guest side (kill attempted). |
ProcessWaitResult_StdIn | The process signalled that stdin became available for writing. |
ProcessWaitResult_StdOut | Data on stdout became available for reading. |
ProcessWaitResult_StdErr | Data on stderr became available for reading. |
ProcessWaitResult_WaitFlagNotSupported | A waiting flag specified in the IProcess::waitFor call is not supported by the guest. |
enum FileCopyFlag |
File copying flags.
{791909D7-4C64-2FA4-4303-ADB10658D347}
enum FsObjMoveFlag |
File moving flags.
{2450A05D-80C6-4C96-9A17-94D73293FF86}
enum DirectoryCreateFlag |
enum DirectoryCopyFlag |
Directory copying flags.
{20108C67-B1EB-4EF6-869B-25539A47A18E}
Directory recursive removement flags.
{455AABF0-7692-48F6-9061-F21579B65769}
enum FsObjRenameFlag |
Flags for use when renaming file system objects (files, directories, symlink, etc), see IGuestSession::fsObjRename.
{59BBF3A1-4E23-D7CF-05D5-CCAE32080ED2}
enum ProcessCreateFlag |
Guest process execution flags.
{C544CD2B-F02D-4886-9901-71C523DB8DC5}
enum ProcessPriority |
enum SymlinkType |
Symbolic link types.
This is significant when creating links on the Windows platform, ignored elsewhere.
{37794668-F8F1-4714-98A5-6F8FA2ED0118}
enum SymlinkReadFlag |
enum ProcessStatus |
Process execution statuses.
{4D52368F-5B48-4BFE-B486-ACF89139B52F}
enum ProcessInputStatus |
Process input statuses.
{A4A0EF9C-29CC-4805-9803-C8215AE9DA6C}
enum PathStyle |
The path style of a system.
(Values matches the RTPATH_STR_F_STYLE_XXX defines in iprt/path.h!)
{97303A5B-42E8-0A55-D16F-D2A92C295261}
enum DirectoryStatus |
Directory statuses.
{A50CA1FC-85A9-4A7A-B755-68C3DB01CAF1}
enum FileAccessMode |
File open access mode for use with IGuestSession::fileOpen and IGuestSession::fileOpenEx.
{231A578F-47FB-EA30-3B3E-8489558227F0}
enum FileOpenAction |
What action IGuestSession::fileOpen and IGuestSession::fileOpenEx should take whether the file being opened exists or not.
{12BC97E2-4FC6-A8B4-4F84-0CBF4AB970D2}
enum FileSharingMode |
File sharing mode for IGuestSession::fileOpenEx.
{F87DFE58-425B-C5BA-7D6D-22ADEEA25DE1}
enum FileOpenExFlag |
Open flags for IGuestSession::fileOpenEx.
{4671ABD4-F70C-42AA-8542-6C169CB87A5C}
Enumerator | |
---|---|
FileOpenExFlag_None | No flag set. |
enum FileStatus |
File statuses.
{8C86468B-B97B-4080-8914-E29F5B0ABD2C}
enum FsObjType |
File system object (file) types.
{34A0D1AA-491E-E209-E150-84964D6CEE5F}
enum DnDAction |
enum DirectoryOpenFlag |
Directory open flags.
{92F838F6-CBF9-4760-BB63-92C567773366}
enum MediumState |
Virtual medium state.
{EF41E980-E012-43CD-9DEA-479D4EF14D13}
Enumerator | |
---|---|
MediumState_NotCreated | Associated medium storage does not exist (either was not created yet or was deleted). |
MediumState_Created | Associated storage exists and accessible; this gets set if the accessibility check performed by IMedium::refreshState was successful. |
MediumState_LockedRead | Medium is locked for reading (see IMedium::lockRead), no data modification is possible. |
MediumState_LockedWrite | Medium is locked for writing (see IMedium::lockWrite), no concurrent data reading or modification is possible. |
MediumState_Inaccessible | Medium accessibility check (see IMedium::refreshState) has not yet been performed, or else, associated medium storage is not accessible. In the first case, IMedium::lastAccessError is empty, in the second case, it describes the error that occurred. |
MediumState_Creating | Associated medium storage is being created. |
MediumState_Deleting | Associated medium storage is being deleted. |
enum MediumType |
Virtual medium type.
For each IMedium, this defines how the medium is attached to a virtual machine (see IMediumAttachment) and what happens when a snapshot (see ISnapshot) is taken of a virtual machine which has the medium attached. At the moment DVD and floppy media are always of type "writethrough".
{FE663FB5-C244-4E1B-9D81-C628B417DD04}
enum MediumVariant |
Virtual medium image variant.
More than one flag may be set.
{0282E97F-4EF3-4411-A8E0-47C384803CB6}
enum DataType |
enum DataFlags |
Medium format capability flags.
{7342BA79-7CE0-4D94-8F86-5ED5A185D9BD}
Enumerator | |
---|---|
MediumFormatCapabilities_Uuid | Supports UUIDs as expected by VirtualBox code. |
MediumFormatCapabilities_CreateFixed | Supports creating fixed size images, allocating all space instantly. |
MediumFormatCapabilities_CreateDynamic | Supports creating dynamically growing images, allocating space on demand. |
MediumFormatCapabilities_CreateSplit2G | Supports creating images split in chunks of a bit less than 2 GBytes. |
MediumFormatCapabilities_Differencing | Supports being used as a format for differencing media (see IMedium::createDiffStorage). |
MediumFormatCapabilities_Asynchronous | Supports asynchronous I/O operations for at least some configurations. |
MediumFormatCapabilities_File | The format backend operates on files (the IMedium::location attribute of the medium specifies a file used to store medium data; for a list of supported file extensions see IMediumFormat::describeFileExtensions). |
MediumFormatCapabilities_Properties | The format backend uses the property interface to configure the storage location and properties (the IMediumFormat::describeProperties method is used to get access to properties supported by the given medium format). |
MediumFormatCapabilities_TcpNetworking | The format backend uses the TCP networking interface for network access. |
MediumFormatCapabilities_VFS | The format backend supports virtual filesystem functionality. |
MediumFormatCapabilities_Discard | The format backend supports discarding blocks. |
MediumFormatCapabilities_Preferred | Indicates that this is a frequently used format backend. |
MediumFormatCapabilities_CapabilityMask |
enum PartitionTableType |
enum KeyboardLED |
enum MouseButtonState |
Mouse button state.
{9EE094B8-B28A-4D56-A166-973CB588D7F8}
enum TouchContactState |
Touch event contact state.
{3F942686-2506-421C-927C-90D4B45F4A38}
Framebuffer capability flags.
{CC395839-30FA-4CA5-AE65-E6360E3EDD7A}
Enumerator | |
---|---|
FramebufferCapabilities_UpdateImage | Requires NotifyUpdateImage. NotifyUpdate must not be called. |
FramebufferCapabilities_VHWA | Supports VHWA interface. If set, then IFramebuffer::processVHWACommand can be called. |
FramebufferCapabilities_VisibleRegion | Supports visible region. If set, then IFramebuffer::setVisibleRegion can be called. |
FramebufferCapabilities_RenderCursor | This framebuffer implementation can render a pointer cursor itself. Unless the MoveCursor capability is also set the cursor will always be rendered at the location of (and usually using) the host pointer. |
FramebufferCapabilities_MoveCursor | Supports rendering a pointer cursor anywhere within the guest screen. Implies RenderCursor. |
enum GuestMonitorStatus |
The current status of the guest display.
{6B8D3F71-39CB-459E-A916-48917ED43E19}
enum ScreenLayoutMode |
How IDisplay::setScreenLayout method should work.
{8FA1964C-8774-11E9-AE5D-1F419105E68D}
Network attachment type.
{CBFD17FA-FDC3-4D1C-97EC-4674DA8D2A5D}
enum NetworkAdapterType |
Network adapter type.
{3C2281E4-D952-4E87-8C7D-24379CB6A81C}
The promiscuous mode policy of an interface.
{C963768A-376F-4C85-8D84-D8CED4B7269E}
enum PortMode |
The PortMode enumeration represents possible communication modes for the virtual serial port device.
{7485FCFD-D603-470A-87AF-26D33BEB7DE9}
enum UartType |
The UART type represents the emulated UART chip for the serial port device.
{C8899D39-0B90-4265-9D02-1E38BD4D1B39}
enum USBControllerType |
enum USBConnectionSpeed |
USB device/port speed state.
This enumeration represents speeds at which a USB device can communicate with the host.
The speed is a function of both the device itself and the port which it is attached to, including hubs and cables in the path.
{D2915840-EA26-4FB4-B72A-21EAF6B888FF}
enum USBDeviceState |
USB device state.
This enumeration represents all possible states of the USB device physically attached to the host computer regarding its state on the host computer and availability to guest computers (all currently running virtual machines).
Once a supported USB device is attached to the host, global USB filters (IHost::USBDeviceFilters) are activated. They can either ignore the device, or put it to USBDeviceState_Held state, or do nothing. Unless the device is ignored by global filters, filters of all currently running guests (IUSBDeviceFilters::deviceFilters) are activated that can put it to USBDeviceState_Captured state.
If the device was ignored by global filters, or didn't match any filters at all (including guest ones), it is handled by the host in a normal way. In this case, the device state is determined by the host and can be one of USBDeviceState_Unavailable, USBDeviceState_Busy or USBDeviceState_Available, depending on the current device usage.
Besides auto-capturing based on filters, the device can be manually captured by guests (IConsole::attachUSBDevice) if its state is USBDeviceState_Busy, USBDeviceState_Available or USBDeviceState_Held.
{B99A2E65-67FB-4882-82FD-F3E5E8193AB4}
Actions for host USB device filters.
{CBC30A49-2F4E-43B5-9DA6-121320475933}
Enumerator | |
---|---|
USBDeviceFilterAction_Null | Null value (never used by the API). |
USBDeviceFilterAction_Ignore | Ignore the matched USB device. |
USBDeviceFilterAction_Hold | Hold the matched USB device. |
enum AudioDriverType |
Host audio driver type.
{32B4ACFD-79AB-4B7E-9A1C-92E99F4E000B}
enum AudioControllerType |
enum AudioCodecType |
The exact variant of audio codec hardware presented to the guest; see IAudioAdapter::audioCodec.
{7B406301-F520-420C-9805-8CE11C086370}
enum AudioDirection |
enum AudioDeviceType |
Audio device type enumeration.
{95457071-EF88-45A9-8416-FC05B08731D2}
enum AudioDeviceState |
Audio device state enumeration.
{45C1B969-556A-4277-8570-B438D2EF5EBE}
enum AuthType |
enum Reason |
Internal event reason type.
{E7E8E097-299D-4E98-8BBC-C31C2D47D0CC}
enum StorageBus |
The bus type of the storage controller (IDE, SATA, SCSI, SAS or Floppy); see IStorageController::bus.
{F9510869-7D07-46BA-96A6-6728FBF4ADEE}
Enumerator | |
---|---|
StorageBus_Null |
Never used by the API. |
StorageBus_IDE | |
StorageBus_SATA | |
StorageBus_SCSI | |
StorageBus_Floppy | |
StorageBus_SAS | |
StorageBus_USB | |
StorageBus_PCIe | |
StorageBus_VirtioSCSI |
The exact variant of storage controller hardware presented to the guest; see IStorageController::controllerType.
{A77D457D-66A3-4368-B24C-293D0F562A9F}
enum ChipsetType |
Type of emulated chipset (think x86 southbridge or ARM SoC/board).
{733D5F16-1F47-4E25-B272-D7C138BC2E3D}
enum NATAliasMode |
enum NATProtocol |
enum BandwidthGroupType |
enum GuestDebugProvider |
The enabled guest debug provider.
This enumeration represents possible values for the IGuestDebugControl::debugProvider attribute.
{ACDADDC5-AA0F-4F2E-BE1F-A9BE2828D24A}
enum GuestDebugIoProvider |
The enabled guest debug I/O provider.
This enumeration represents possible values for the IGuestDebugControl::debugIoProvider attribute.
{0CF00B1B-2FF7-414C-81C6-6CF410EAEC4A}
Enumerator | |
---|---|
GuestDebugIoProvider_None | No connection available (only useful with GuestDebugProvider_None). |
GuestDebugIoProvider_TCP | The remote stub is available through a TCP connection. |
GuestDebugIoProvider_UDP | The remote stub is available through a UDP connection. |
GuestDebugIoProvider_IPC | The remote stub is available through a IPC connection, namely a named pipe on Windows or a unix socket on other hosts. |
enum VBoxEventType |
Type of an event.
See IEvent for an introduction to VirtualBox event handling.
{0C8F8BD7-C5D8-4085-83C2-558A4025B215}
Enumerator | |
---|---|
VBoxEventType_Invalid | Invalid event, must be first. |
VBoxEventType_Any | Wildcard for all events. Events of this type are never delivered, and only used in IEventSource::registerListener call to simplify registration. |
VBoxEventType_Vetoable | Wildcard for all vetoable events. Events of this type are never delivered, and only used in IEventSource::registerListener call to simplify registration. |
VBoxEventType_MachineEvent | Wildcard for all machine events. Events of this type are never delivered, and only used in IEventSource::registerListener call to simplify registration. |
VBoxEventType_SnapshotEvent | Wildcard for all snapshot events. Events of this type are never delivered, and only used in IEventSource::registerListener call to simplify registration. |
VBoxEventType_InputEvent | Wildcard for all input device (keyboard, mouse) events. Events of this type are never delivered, and only used in IEventSource::registerListener call to simplify registration. |
VBoxEventType_LastWildcard | Last wildcard. |
VBoxEventType_OnMachineStateChanged | |
VBoxEventType_OnMachineDataChanged | |
VBoxEventType_OnExtraDataChanged | |
VBoxEventType_OnExtraDataCanChange | |
VBoxEventType_OnMediumRegistered | |
VBoxEventType_OnMachineRegistered | |
VBoxEventType_OnSessionStateChanged | |
VBoxEventType_OnSnapshotTaken | See ISnapshotTakenEvent. |
VBoxEventType_OnSnapshotDeleted | |
VBoxEventType_OnSnapshotChanged | |
VBoxEventType_OnGuestPropertyChanged | |
VBoxEventType_OnMousePointerShapeChanged | |
VBoxEventType_OnMouseCapabilityChanged | |
VBoxEventType_OnKeyboardLedsChanged | |
VBoxEventType_OnStateChanged | See IStateChangedEvent. |
VBoxEventType_OnAdditionsStateChanged | |
VBoxEventType_OnNetworkAdapterChanged | |
VBoxEventType_OnSerialPortChanged | |
VBoxEventType_OnParallelPortChanged | |
VBoxEventType_OnStorageControllerChanged | |
VBoxEventType_OnMediumChanged | See IMediumChangedEvent. |
VBoxEventType_OnVRDEServerChanged | |
VBoxEventType_OnUSBControllerChanged | |
VBoxEventType_OnUSBDeviceStateChanged | |
VBoxEventType_OnSharedFolderChanged | |
VBoxEventType_OnRuntimeError | See IRuntimeErrorEvent. |
VBoxEventType_OnCanShowWindow | See ICanShowWindowEvent. |
VBoxEventType_OnShowWindow | See IShowWindowEvent. |
VBoxEventType_OnCPUChanged | See ICPUChangedEvent. |
VBoxEventType_OnVRDEServerInfoChanged | |
VBoxEventType_OnEventSourceChanged | |
VBoxEventType_OnCPUExecutionCapChanged | |
VBoxEventType_OnGuestKeyboard | See IGuestKeyboardEvent. |
VBoxEventType_OnGuestMouse | See IGuestMouseEvent. |
VBoxEventType_OnNATRedirect | See INATRedirectEvent. |
VBoxEventType_OnHostPCIDevicePlug | |
VBoxEventType_OnVBoxSVCAvailabilityChanged | |
VBoxEventType_OnBandwidthGroupChanged | |
VBoxEventType_OnGuestMonitorChanged | |
VBoxEventType_OnStorageDeviceChanged | |
VBoxEventType_OnClipboardModeChanged | |
VBoxEventType_OnDnDModeChanged | See IDnDModeChangedEvent. |
VBoxEventType_OnNATNetworkChanged | |
VBoxEventType_OnNATNetworkStartStop | |
VBoxEventType_OnNATNetworkAlter | |
VBoxEventType_OnNATNetworkCreationDeletion | |
VBoxEventType_OnNATNetworkSetting | |
VBoxEventType_OnNATNetworkPortForward | |
VBoxEventType_OnGuestSessionStateChanged | |
VBoxEventType_OnGuestSessionRegistered | |
VBoxEventType_OnGuestProcessRegistered | |
VBoxEventType_OnGuestProcessStateChanged | |
VBoxEventType_OnGuestProcessInputNotify | |
VBoxEventType_OnGuestProcessOutput | |
VBoxEventType_OnGuestFileRegistered | |
VBoxEventType_OnGuestFileStateChanged | |
VBoxEventType_OnGuestFileOffsetChanged | |
VBoxEventType_OnGuestFileRead | See IGuestFileReadEvent. |
VBoxEventType_OnGuestFileWrite | See IGuestFileWriteEvent. |
VBoxEventType_OnRecordingStateChanged | |
VBoxEventType_OnGuestUserStateChanged | |
VBoxEventType_OnGuestMultiTouch | |
VBoxEventType_OnHostNameResolutionConfigurationChange | |
VBoxEventType_OnSnapshotRestored | |
VBoxEventType_OnMediumConfigChanged | |
VBoxEventType_OnAudioAdapterChanged | |
VBoxEventType_OnProgressPercentageChanged | |
VBoxEventType_OnProgressTaskCompleted | |
VBoxEventType_OnCursorPositionChanged | |
VBoxEventType_OnGuestAdditionsStatusChanged | |
VBoxEventType_OnGuestMonitorInfoChanged | |
VBoxEventType_OnGuestFileSizeChanged | |
VBoxEventType_OnClipboardFileTransferModeChanged | |
VBoxEventType_OnCloudProviderListChanged | |
VBoxEventType_OnCloudProviderRegistered | |
VBoxEventType_OnCloudProviderUninstall | |
VBoxEventType_OnCloudProfileRegistered | |
VBoxEventType_OnCloudProfileChanged | |
VBoxEventType_OnProgressCreated | |
VBoxEventType_OnLanguageChanged | |
VBoxEventType_OnUpdateAgentAvailable | |
VBoxEventType_OnUpdateAgentError | |
VBoxEventType_OnUpdateAgentSettingsChanged | |
VBoxEventType_OnUpdateAgentStateChanged | |
VBoxEventType_OnHostAudioDeviceChanged | |
VBoxEventType_OnGuestDebugControlChanged | |
VBoxEventType_OnMachineGroupsChanged | |
VBoxEventType_OnGuestDirectoryRegistered | |
VBoxEventType_OnGuestDirectoryStateChanged | |
VBoxEventType_OnGuestDirectoryRead | |
VBoxEventType_OnClipboardError | See IClipboardErrorEvent. |
VBoxEventType_OnExtPackInstalled | |
VBoxEventType_OnExtPackUninstalled | |
VBoxEventType_OnRecordingScreenStateChanged | |
VBoxEventType_End | Must be last event, used for iterations and structures relying on numerical event values. |
enum GuestMouseEventMode |
The mode (relative, absolute, multi-touch) of a pointer event.
{4B500146-EBBA-4B7C-BC29-69C2D57A5CAF}
Enumerator | |
---|---|
GuestMouseEventMode_Relative | Relative event. |
GuestMouseEventMode_Absolute | Absolute event. |
How the guest monitor has been changed.
{EF172985-7E36-4297-95BE-E46396968D66}
enum FormValueType |
enum CloudMachineState |
Cloud instance execution state.
{67B6D054-0154-4F5D-B71B-6AC406E1FF78}
enum CloudImageState |
Cloud image state.
{6E5D6762-EEA2-4F2C-B104-2952D0AA8A0A}
enum MetricType |
Metric names.
{ADF26EDC-7E32-11EE-B962-0242AC120002}
enum SymlinkPolicy |
Shared Folder Symbolic Link Security Policies.
{A818472E-215D-4279-8AF8-EAC4C0517BCC}