|
|
1.1 root 1: /*++ BUILD Version: 0001 // Increment this if a change has global effects
2:
3: Copyright (c) 1990 Microsoft Corporation
4:
5: Module Name:
6:
7: ntkdexts.h
8:
9: Abstract:
10:
11: This file contains procedure prototypes and structures
12: needed to write KD kernel debugger extensions.
13:
14: Author:
15:
16: John Vert (jvert) 28-Jul-1992
17:
18: Environment:
19:
20: runs in the Win32 KD debug environment.
21:
22: Revision History:
23:
24: --*/
25:
26: #ifndef _NTKDEXTNS_
27: #define _NTKDEXTNS_
28:
29: typedef
30: VOID
31: (*PNTKD_OUTPUT_ROUTINE)(
32: char *,
33: ...
34: );
35:
36: typedef
37: DWORD
38: (*PNTKD_GET_EXPRESSION)(
39: char *
40: );
41:
42: typedef
43: VOID
44: (*PNTKD_GET_SYMBOL)(
45: LPVOID offset,
46: PUCHAR pchBuffer,
47: LPDWORD pDisplacement
48: );
49:
50: typedef
51: DWORD
52: (*PNTKD_DISASM)(
53: LPDWORD lpOffset,
54: LPSTR lpBuffer,
55: BOOL fShowEfeectiveAddress
56: );
57:
58: typedef
59: BOOL
60: (*PNTKD_CHECK_CONTROL_C)(
61: VOID
62: );
63:
64: typedef
65: BOOL
66: (*PNTKD_READ_VIRTUAL_MEMORY)(
67: LPVOID address,
68: LPVOID buffer,
69: ULONG count,
70: PULONG bytesread
71: );
72:
73: typedef
74: BOOL
75: (*PNTKD_WRITE_VIRTUAL_MEMORY)(
76: LPVOID address,
77: LPVOID buffer,
78: ULONG count,
79: PULONG byteswritten
80: );
81:
82: typedef
83: BOOL
84: (*PNTKD_READ_PHYSICAL_MEMORY)(
85: PHYSICAL_ADDRESS address,
86: LPVOID buffer,
87: ULONG count,
88: PULONG bytesread
89: );
90:
91: typedef
92: BOOL
93: (*PNTKD_WRITE_PHYSICAL_MEMORY)(
94: PHYSICAL_ADDRESS address,
95: LPVOID buffer,
96: ULONG length,
97: PULONG byteswritten
98: );
99:
100: typedef struct _NTKD_EXTENSION_APIS {
101: DWORD nSize;
102: PNTKD_OUTPUT_ROUTINE lpOutputRoutine;
103: PNTKD_GET_EXPRESSION lpGetExpressionRoutine;
104: PNTKD_GET_SYMBOL lpGetSymbolRoutine;
105: PNTKD_DISASM lpDisasmRoutine;
106: PNTKD_CHECK_CONTROL_C lpCheckControlCRoutine;
107: PNTKD_READ_VIRTUAL_MEMORY lpReadVirtualMemRoutine;
108: PNTKD_WRITE_VIRTUAL_MEMORY lpWriteVirtualMemRoutine;
109: PNTKD_READ_PHYSICAL_MEMORY lpReadPhysicalMemRoutine;
110: PNTKD_WRITE_PHYSICAL_MEMORY lpWritePhysicalMemRoutine;
111: } NTKD_EXTENSION_APIS, *PNTKD_EXTENSION_APIS;
112:
113: typedef
114: VOID
115: (*PNTKD_EXTENSION_ROUTINE)(
116: DWORD dwCurrentPc,
117: PNTKD_EXTENSION_APIS lpExtensionApis,
118: LPSTR lpArgumentString
119: );
120:
121: #endif // _NTKDEXTNS_
122:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.