Collapse the table of content
Expand the table of content
Important This document may not represent best practices for current development, links to downloads and other resources may no longer be valid. Current recommended version can be found here. ArchiveDisclaimer


Microsoft Specific

This topic is new for Visual Studio 2005 SP1.

Places the calling application in VMX non-root operation state (VM enter) by using the current virtual-machine control structure (VMCS).

unsigned char __vmx_vmlaunch(

Value Meaning


The operation succeeded.


The operation failed with extended status available in the VM-instruction error field of the current VMCS.


The operation failed without status available.

An application can perform a VM-enter operation by using either the __vmx_vmlaunch or __vmx_vmresume function. The __vmx_vmlaunch function can be used only with a VMCS whose launch state is Clear, and the __vmx_vmresume function can be used only with a VMCS whose launch state is Launched. Consequently, use the __vmx_vmclear function to set the launch state of a VMCS to Clear, and then use the __vmx_vmlaunch function for your first VM-enter operation and the __vmx_vmresume function for subsequent VM-enter operations.

The __vmx_vmlaunch function is equivalent to the VMLAUNCH machine instruction. This function supports the interaction of a host's virtual machine monitor with a guest operating system and its applications. For more information, search for the document, "Intel Virtualization Technical Specification for the IA-32 Intel Architecture," document number C97063-002, at the Intel Corporation site.

Intrinsic Architecture



Header file <intrin.h>

END Microsoft Specific

© 2015 Microsoft