1 #include "vdmdbg.h"
2
3 #define NDEBUG
4 #include <debug.h>
5
6 HINSTANCE hDllInstance;
7
VDMBreakThread(HANDLE hProcess,HANDLE hThread)8 BOOL WINAPI VDMBreakThread( HANDLE hProcess,
9 HANDLE hThread )
10 {
11 UNIMPLEMENTED;
12 return FALSE;
13 }
14
VDMGetDbgFlags(HANDLE hProcess)15 DWORD WINAPI VDMGetDbgFlags( HANDLE hProcess )
16 {
17 UNIMPLEMENTED;
18 return ERROR_CALL_NOT_IMPLEMENTED;
19 }
20
VDMIsModuleLoaded(LPSTR szPath)21 BOOL WINAPI VDMIsModuleLoaded( LPSTR szPath )
22 {
23 UNIMPLEMENTED;
24 return FALSE;
25 }
26
VDMGetPointer(HANDLE handle,HANDLE handle2,WORD wSelector,DWORD dwOffset,BOOL fProtMode)27 ULONG WINAPI VDMGetPointer( HANDLE handle,
28 HANDLE handle2,
29 WORD wSelector,
30 DWORD dwOffset,
31 BOOL fProtMode )
32 {
33 UNIMPLEMENTED;
34 return ERROR_CALL_NOT_IMPLEMENTED;
35 }
36
VDMProcessException(LPDEBUG_EVENT lpDebugEvent)37 BOOL WINAPI VDMProcessException( LPDEBUG_EVENT lpDebugEvent )
38 {
39 UNIMPLEMENTED;
40 return FALSE;
41 }
42
VDMGetSegmentInfo(WORD word,ULONG ulong,BOOL boolVal,VDM_SEGINFO * pVDMSegInfo)43 BOOL WINAPI VDMGetSegmentInfo( WORD word,
44 ULONG ulong,
45 BOOL boolVal,
46 VDM_SEGINFO *pVDMSegInfo )
47 {
48 UNIMPLEMENTED;
49 return FALSE;
50 }
51
52
VDMSetDbgFlags(HANDLE hProcess,DWORD dwFlags)53 BOOL WINAPI VDMSetDbgFlags( HANDLE hProcess,
54 DWORD dwFlags )
55 {
56 UNIMPLEMENTED;
57 return FALSE;
58 }
59
VDMDetectWOW(void)60 BOOL WINAPI VDMDetectWOW( void )
61 {
62 UNIMPLEMENTED;
63 return FALSE;
64 }
65
VDMEnumTaskWOW(DWORD dword,TASKENUMPROC TaskEnumProc,LPARAM lParam)66 INT WINAPI VDMEnumTaskWOW( DWORD dword,
67 TASKENUMPROC TaskEnumProc,
68 LPARAM lParam )
69 {
70 UNIMPLEMENTED;
71 return ERROR_CALL_NOT_IMPLEMENTED;
72 }
73
VDMStartTaskInWOW(DWORD dwProcessId,LPSTR lpCommandLine,WORD wShow)74 BOOL WINAPI VDMStartTaskInWOW( DWORD dwProcessId,
75 LPSTR lpCommandLine,
76 WORD wShow )
77 {
78 UNIMPLEMENTED;
79 return FALSE;
80 }
81
VDMKillWOW(VOID)82 BOOL WINAPI VDMKillWOW( VOID )
83 {
84 UNIMPLEMENTED;
85 return FALSE;
86 }
87
VDMEnumProcessWOW(PROCESSENUMPROC ProcessEnumProc,LPARAM lParam)88 INT WINAPI VDMEnumProcessWOW( PROCESSENUMPROC ProcessEnumProc,
89 LPARAM lParam )
90 {
91 UNIMPLEMENTED;
92 return ERROR_CALL_NOT_IMPLEMENTED;
93 }
94
95
VDMEnumTaskWOWEx(DWORD dwProcessId,TASKENUMPROCEX TaskEnumProcEx,LPARAM lParam)96 INT WINAPI VDMEnumTaskWOWEx( DWORD dwProcessId,
97 TASKENUMPROCEX TaskEnumProcEx,
98 LPARAM lParam )
99 {
100 UNIMPLEMENTED;
101 return ERROR_CALL_NOT_IMPLEMENTED;
102 }
103
VDMTerminateTaskWOW(DWORD dwProcessId,WORD hTask)104 BOOL WINAPI VDMTerminateTaskWOW( DWORD dwProcessId,
105 WORD hTask )
106 {
107 UNIMPLEMENTED;
108 return FALSE;
109 }
110
VDMGetContext(HANDLE handle,HANDLE handle2,LPVDMCONTEXT lpVDMContext)111 BOOL WINAPI VDMGetContext( HANDLE handle,
112 HANDLE handle2,
113 LPVDMCONTEXT lpVDMContext )
114 {
115 UNIMPLEMENTED;
116 return FALSE;
117 }
118
VDMSetContext(HANDLE handle,HANDLE handle2,LPVDMCONTEXT lpVDMContext)119 BOOL WINAPI VDMSetContext( HANDLE handle,
120 HANDLE handle2,
121 LPVDMCONTEXT lpVDMContext)
122 {
123 UNIMPLEMENTED;
124 return FALSE;
125 }
126
127
VDMGetSelectorModule(HANDLE handle,HANDLE handle2,WORD word,PUINT punit,LPSTR lpModuleName,UINT uInt,LPSTR lpstr,UINT uInt2)128 BOOL WINAPI VDMGetSelectorModule( HANDLE handle,
129 HANDLE handle2,
130 WORD word,
131 PUINT punit,
132 LPSTR lpModuleName,
133 UINT uInt,
134 LPSTR lpstr,
135 UINT uInt2 )
136 {
137 UNIMPLEMENTED;
138 return FALSE;
139 }
140
141
VDMGetModuleSelector(HANDLE handle,HANDLE handle2,UINT uInt,LPSTR lpModuleName,LPWORD lpword)142 BOOL WINAPI VDMGetModuleSelector( HANDLE handle,
143 HANDLE handle2,
144 UINT uInt,
145 LPSTR lpModuleName,
146 LPWORD lpword )
147 {
148 UNIMPLEMENTED;
149 return FALSE;
150 }
151
VDMModuleFirst(HANDLE handle,HANDLE handle2,LPMODULEENTRY lpModuleEntry,DEBUGEVENTPROC lpDebugEventProc,LPVOID lpvoid)152 BOOL WINAPI VDMModuleFirst( HANDLE handle,
153 HANDLE handle2,
154 LPMODULEENTRY lpModuleEntry,
155 DEBUGEVENTPROC lpDebugEventProc,
156 LPVOID lpvoid )
157 {
158 UNIMPLEMENTED;
159 return FALSE;
160 }
161
VDMGlobalFirst(HANDLE handle,HANDLE handle2,LPGLOBALENTRY lpGlobalEntry,WORD word,DEBUGEVENTPROC lpDebugEventProc,LPVOID lpvoid)162 BOOL WINAPI VDMGlobalFirst( HANDLE handle,
163 HANDLE handle2,
164 LPGLOBALENTRY lpGlobalEntry,
165 WORD word,
166 DEBUGEVENTPROC lpDebugEventProc,
167 LPVOID lpvoid )
168 {
169 UNIMPLEMENTED;
170 return FALSE;
171 }
172
VDMGlobalNext(HANDLE handle,HANDLE handle2,LPGLOBALENTRY lpGlobalEntry,WORD word,DEBUGEVENTPROC lpDebugEventProc,LPVOID lpvoid)173 BOOL WINAPI VDMGlobalNext( HANDLE handle,
174 HANDLE handle2,
175 LPGLOBALENTRY lpGlobalEntry,
176 WORD word,
177 DEBUGEVENTPROC lpDebugEventProc,
178 LPVOID lpvoid )
179 {
180 UNIMPLEMENTED;
181 return FALSE;
182 }
183
VDMModuleNext(HANDLE handle,HANDLE handle2,LPMODULEENTRY lpModuleEntry,DEBUGEVENTPROC lpDebugEventProc,LPVOID lpvoid)184 BOOL WINAPI VDMModuleNext( HANDLE handle,
185 HANDLE handle2,
186 LPMODULEENTRY lpModuleEntry,
187 DEBUGEVENTPROC lpDebugEventProc,
188 LPVOID lpvoid )
189 {
190 UNIMPLEMENTED;
191 return FALSE;
192 }
193
194 BOOL WINAPI
DllMain(IN HINSTANCE hinstDLL,IN DWORD dwReason,IN LPVOID lpvReserved)195 DllMain( IN HINSTANCE hinstDLL,
196 IN DWORD dwReason,
197 IN LPVOID lpvReserved )
198 {
199 switch (dwReason)
200 {
201 case DLL_PROCESS_ATTACH:
202 hDllInstance = hinstDLL;
203 DisableThreadLibraryCalls(hDllInstance);
204 /* Don't break, initialize first thread */
205 case DLL_THREAD_ATTACH:
206 break;
207 case DLL_THREAD_DETACH:
208 break;
209 case DLL_PROCESS_DETACH:
210 break;
211 }
212 return TRUE;
213 }
214
215