home *** CD-ROM | disk | FTP | other *** search
/ PC Plus SuperCD (UK) 2000 May / PCP163A.iso / Runimage / Cbuilder4 / Include / NTSDEXTS.H < prev    next >
Encoding:
C/C++ Source or Header  |  1999-01-26  |  1.5 KB  |  91 lines

  1. /*++ BUILD Version: 0001    // Increment this if a change has global effects
  2.  
  3. Copyright 1990 - 1998 Microsoft Corporation
  4.  
  5. Module Name:
  6.  
  7.     ntsdexts.h
  8.  
  9. Abstract:
  10.  
  11.     This file contains procedure prototypes and structures
  12.     needed to write NTSD and KD debugger extensions.
  13.  
  14. Environment:
  15.  
  16.     runs in the Win32 NTSD debug environment.
  17.  
  18. Revision History:
  19.  
  20. --*/
  21.  
  22. #ifndef _NTSDEXTNS_
  23. #pragma option push -b -a8 -pc -A- /*P_O_Push_S*/
  24. #define _NTSDEXTNS_
  25.  
  26. #ifdef __cplusplus
  27. extern "C" {
  28. #endif
  29.  
  30. typedef
  31. VOID
  32. (*PNTSD_OUTPUT_ROUTINE)(
  33.     char *,
  34.     ...
  35.     );
  36.  
  37. typedef
  38. DWORD
  39. (*PNTSD_GET_EXPRESSION)(
  40.     char *
  41.     );
  42.  
  43. typedef
  44. VOID
  45. (*PNTSD_GET_SYMBOL)(
  46.     LPVOID offset,
  47.     PUCHAR pchBuffer,
  48.     LPDWORD pDisplacement
  49.     );
  50.  
  51. typedef
  52. DWORD
  53. (*PNTSD_DISASM)(
  54.     LPDWORD lpOffset,
  55.     LPSTR lpBuffer,
  56.     BOOL fShowEfeectiveAddress
  57.     );
  58.  
  59. typedef
  60. BOOL
  61. (*PNTSD_CHECK_CONTROL_C)(
  62.     VOID
  63.     );
  64.  
  65. typedef struct _NTSD_EXTENSION_APIS {
  66.     DWORD nSize;
  67.     PNTSD_OUTPUT_ROUTINE lpOutputRoutine;
  68.     PNTSD_GET_EXPRESSION lpGetExpressionRoutine;
  69.     PNTSD_GET_SYMBOL lpGetSymbolRoutine;
  70.     PNTSD_DISASM lpDisasmRoutine;
  71.     PNTSD_CHECK_CONTROL_C lpCheckControlCRoutine;
  72. } NTSD_EXTENSION_APIS, *PNTSD_EXTENSION_APIS;
  73.  
  74. typedef
  75. VOID
  76. (*PNTSD_EXTENSION_ROUTINE)(
  77.     HANDLE hCurrentProcess,
  78.     HANDLE hCurrentThread,
  79.     DWORD dwCurrentPc,
  80.     PNTSD_EXTENSION_APIS lpExtensionApis,
  81.     LPSTR lpArgumentString
  82.     );
  83.  
  84. #ifdef __cplusplus
  85. }
  86. #endif
  87.  
  88.  
  89. #pragma option pop /*P_O_Pop*/
  90. #endif // _NTSDEXTNS_
  91.