Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

68 lines
1.4 KiB

  1. /*++
  2. Copyright (c) 1990 Microsoft Corporation
  3. Module Name:
  4. basevdm.h
  5. Abstract:
  6. This module contains private function prototypes
  7. and types for vdm support.
  8. Author:
  9. Sudeep Bharati (sudeepb) 15-Sep-1991
  10. Revision History:
  11. --*/
  12. #define ROUND_UP(n,size) (((ULONG)(n) + (size - 1)) & ~(size - 1))
  13. // Update VDM entry indexes
  14. #define UPDATE_VDM_UNDO_CREATION 0
  15. #define UPDATE_VDM_PROCESS_HANDLE 1
  16. #define UPDATE_VDM_HOOKED_CTRLC 2
  17. // Undo VDM Creation States
  18. #define VDM_PARTIALLY_CREATED 1
  19. #define VDM_FULLY_CREATED 2
  20. #define VDM_BEING_REUSED 4
  21. #define VDM_CREATION_SUCCESSFUL 8
  22. // Defines for BinaryType
  23. #define BINARY_TYPE_DOS 0x10
  24. #define BINARY_TYPE_WIN16 0x20
  25. #define BINARY_TYPE_SEPWOW 0x40
  26. #define BINARY_SUBTYPE_MASK 0xF
  27. #define BINARY_TYPE_DOS_EXE 01
  28. #define BINARY_TYPE_DOS_COM 02
  29. #define BINARY_TYPE_DOS_PIF 03
  30. #define IS_SHARED_WOW_BINARY(VdmBinaryType) \
  31. (BINARY_TYPE_WIN16 & (VdmBinaryType))
  32. #define IS_WOW_BINARY(VdmBinaryType) \
  33. ((BINARY_TYPE_WIN16 | BINARY_TYPE_SEPWOW) & (VdmBinaryType))
  34. // Defines for VDMState
  35. #define VDM_NOT_PRESENT 1
  36. #define VDM_PRESENT_NOT_READY 2
  37. #define VDM_PRESENT_AND_READY 4
  38. #define VDM_STATE_MASK 7
  39. #define EXIT_VDM 1
  40. #define EXIT_VDM_NOTIFICATION 2
  41.