windows-nt/Source/XPSP1/NT/base/win32/inc/basevdm.h

69 lines
1.4 KiB
C
Raw Permalink Normal View History

2020-09-26 03:20:57 -05:00
/*++
Copyright (c) 1990 Microsoft Corporation
Module Name:
basevdm.h
Abstract:
This module contains private function prototypes
and types for vdm support.
Author:
Sudeep Bharati (sudeepb) 15-Sep-1991
Revision History:
--*/
#define ROUND_UP(n,size) (((ULONG)(n) + (size - 1)) & ~(size - 1))
// Update VDM entry indexes
#define UPDATE_VDM_UNDO_CREATION 0
#define UPDATE_VDM_PROCESS_HANDLE 1
#define UPDATE_VDM_HOOKED_CTRLC 2
// Undo VDM Creation States
#define VDM_PARTIALLY_CREATED 1
#define VDM_FULLY_CREATED 2
#define VDM_BEING_REUSED 4
#define VDM_CREATION_SUCCESSFUL 8
// Defines for BinaryType
#define BINARY_TYPE_DOS 0x10
#define BINARY_TYPE_WIN16 0x20
#define BINARY_TYPE_SEPWOW 0x40
#define BINARY_SUBTYPE_MASK 0xF
#define BINARY_TYPE_DOS_EXE 01
#define BINARY_TYPE_DOS_COM 02
#define BINARY_TYPE_DOS_PIF 03
#define IS_SHARED_WOW_BINARY(VdmBinaryType) \
(BINARY_TYPE_WIN16 & (VdmBinaryType))
#define IS_WOW_BINARY(VdmBinaryType) \
((BINARY_TYPE_WIN16 | BINARY_TYPE_SEPWOW) & (VdmBinaryType))
// Defines for VDMState
#define VDM_NOT_PRESENT 1
#define VDM_PRESENT_NOT_READY 2
#define VDM_PRESENT_AND_READY 4
#define VDM_STATE_MASK 7
#define EXIT_VDM 1
#define EXIT_VDM_NOTIFICATION 2