Virtual Devices (3.1) (vdag31qh.hlp) (Table of Contents; Topic list)
Get_Next_VM_Handle
                                                     Up Next Previous
────────────────────────────────────────────────────────────────────────────
 
include vmm.inc
 
mov     ebx, VM           ; VM handle
VMMcall Get_Next_VM_Handle
 
mov     [NextVM], ebx     ; next VM handle
 
The Get_Next_VM_Handle service returns the handle of the next virtual
machine in the virtual machine list maintained by the system. Although each
virtual machine appears only once in the list, the order of the handles is
not guaranteed. The list is circular, so a virtual device scanning the list
should stop scanning when the latest handle returned is equal to the first
handle returned.
 
Parameter  Description
────────────────────────────────────────────────────────────────────────────
 
VM         Specifies a handle identifying a virtual machine.
 
Return Value
 
The EBX register contains the handle of the next virtual machine in the
list.
 
Example
 
The following example modifies the state of every virtual machine by using
the Get_Next_VM_Handle service to retrieve handles of all valid virtual
machines:
 
    VMMcall Get_Cur_VM_Handle
 
Scan_Loop:
 
    ; modify the VM state
 
    VMMcall Get_Next_VM_Handle
    VMMcall Test_Cur_VM_Handle
    jne     Scan_Loop
 
Uses
 
EBX, Flags
 
See Also
 
Get_Cur_VM_Handle, Test_Cur_VM_Handle