home *** CD-ROM | disk | FTP | other *** search
/ CD Actual Thematic 25: Programming / pc_actual_25.iso / C_C++ / BorlandCompiler / freecommandLinetools.exe / Include / ntsdexts.h < prev    next >
Encoding:
C/C++ Source or Header  |  2000-06-27  |  1.6 KB  |  95 lines

  1. /*++ BUILD Version: 0001    // Increment this if a change has global effects
  2.  
  3. Copyright (c) 1990-1999  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*/
  24. #define _NTSDEXTNS_
  25.  
  26. #if _MSC_VER > 1000
  27. #pragma once
  28. #endif
  29.  
  30. #ifdef __cplusplus
  31. extern "C" {
  32. #endif
  33.  
  34. typedef
  35. VOID
  36. (*PNTSD_OUTPUT_ROUTINE)(
  37.     char *,
  38.     ...
  39.     );
  40.  
  41. typedef
  42. ULONG_PTR
  43. (*PNTSD_GET_EXPRESSION)(
  44.     char *
  45.     );
  46.  
  47. typedef
  48. VOID
  49. (*PNTSD_GET_SYMBOL)(
  50.     ULONG_PTR offset,
  51.     PUCHAR pchBuffer,
  52.     ULONG_PTR *pDisplacement
  53.     );
  54.  
  55. typedef
  56. DWORD
  57. (*PNTSD_DISASM)(
  58.     ULONG_PTR *lpOffset,
  59.     LPSTR lpBuffer,
  60.     ULONG fShowEfeectiveAddress
  61.     );
  62.  
  63. typedef
  64. BOOL
  65. (*PNTSD_CHECK_CONTROL_C)(
  66.     VOID
  67.     );
  68.  
  69. typedef struct _NTSD_EXTENSION_APIS {
  70.     DWORD nSize;
  71.     PNTSD_OUTPUT_ROUTINE lpOutputRoutine;
  72.     PNTSD_GET_EXPRESSION lpGetExpressionRoutine;
  73.     PNTSD_GET_SYMBOL lpGetSymbolRoutine;
  74.     PNTSD_DISASM lpDisasmRoutine;
  75.     PNTSD_CHECK_CONTROL_C lpCheckControlCRoutine;
  76. } NTSD_EXTENSION_APIS, *PNTSD_EXTENSION_APIS;
  77.  
  78. typedef
  79. VOID
  80. (*PNTSD_EXTENSION_ROUTINE)(
  81.     HANDLE hCurrentProcess,
  82.     HANDLE hCurrentThread,
  83.     DWORD dwCurrentPc,
  84.     PNTSD_EXTENSION_APIS lpExtensionApis,
  85.     LPSTR lpArgumentString
  86.     );
  87.  
  88. #ifdef __cplusplus
  89. }
  90. #endif
  91.  
  92.  
  93. #pragma option pop /*P_O_Pop*/
  94. #endif // _NTSDEXTNS_
  95.