*add some more stubs for Virtual DOS Machine Debug (six still missing)
Modified: trunk/reactos/lib/vdmdbg/vdmdbg.c
Modified: trunk/reactos/lib/vdmdbg/vdmdbg.def
Modified: trunk/reactos/lib/vdmdbg/vdmdbg.h
_____
Modified: trunk/reactos/lib/vdmdbg/vdmdbg.c
--- trunk/reactos/lib/vdmdbg/vdmdbg.c 2005-10-14 22:04:02 UTC (rev
18460)
+++ trunk/reactos/lib/vdmdbg/vdmdbg.c 2005-10-14 22:31:06 UTC (rev
18461)
@@ -12,39 +12,189 @@
return FALSE;
}
+DWORD WINAPI VDMGetDbgFlags( HANDLE hProcess )
+{
+ UNIMPLEMENTED;
+ return ERROR_CALL_NOT_IMPLEMENTED;
+}
+
+BOOL WINAPI VDMIsModuleLoaded( LPSTR szPath )
+{
+ UNIMPLEMENTED;
+ return FALSE;
+}
+
+ULONG WINAPI VDMGetPointer( HANDLE handle,
+ HANDLE handle2,
+ WORD wSelector,
+ DWORD dwOffset,
+ BOOL fProtMode )
+{
+ UNIMPLEMENTED;
+ return ERROR_CALL_NOT_IMPLEMENTED;
+}
+
+BOOL WINAPI VDMProcessException( LPDEBUG_EVENT lpDebugEvent )
+{
+ UNIMPLEMENTED;
+ return FALSE;
+}
+
+BOOL WINAPI VDMGetSegmentInfo( WORD word,
+ ULONG
ulong,
+ BOOL boolVal,
+ VDM_SEGINFO *pVDMSegInfo )
+{
+ UNIMPLEMENTED;
+ return FALSE;
+}
+
+
+BOOL WINAPI VDMSetDbgFlags( HANDLE hProcess,
+ DWORD dwFlags )
+{
+ UNIMPLEMENTED;
+ return FALSE;
+}
+
BOOL WINAPI VDMDetectWOW( void )
{
UNIMPLEMENTED;
return FALSE;
}
-INT WINAPI VDMEnumProcessWOW( PROCESSENUMPROC fp,
- LPARAM lparam )
+INT WINAPI VDMEnumTaskWOW( DWORD dword,
+ TASKENUMPROC TaskEnumProc,
+ LPARAM lParam )
{
UNIMPLEMENTED;
+ return ERROR_CALL_NOT_IMPLEMENTED;
+}
+
+BOOL WINAPI VDMStartTaskInWOW( DWORD dwProcessId,
+ LPSTR lpCommandLine,
+ WORD wShow )
+{
+ UNIMPLEMENTED;
return FALSE;
}
+BOOL WINAPI VDMKillWOW( VOID )
+{
+ UNIMPLEMENTED;
+ return FALSE;
+}
+INT WINAPI VDMEnumProcessWOW( PROCESSENUMPROC ProcessEnumProc,
+ LPARAM lParam )
+{
+ UNIMPLEMENTED;
+ return ERROR_CALL_NOT_IMPLEMENTED;
+}
+
+
INT WINAPI VDMEnumTaskWOWEx( DWORD dwProcessId,
- TASKENUMPROCEX fp,
- LPARAM lparam )
+ TASKENUMPROCEX TaskEnumProcEx,
+ LPARAM lParam )
{
UNIMPLEMENTED;
return ERROR_CALL_NOT_IMPLEMENTED;
}
BOOL WINAPI VDMTerminateTaskWOW( DWORD dwProcessId,
- WORD htask )
+ WORD hTask )
{
UNIMPLEMENTED;
return FALSE;
}
+BOOL WINAPI VDMGetContext( HANDLE handle,
+ HANDLE handle2,
+ LPVDMCONTEXT lpVDMContext )
+{
+ UNIMPLEMENTED;
+ return FALSE;
+}
+
+BOOL WINAPI VDMSetContext( HANDLE handle,
+ HANDLE handle2,
+ LPVDMCONTEXT lpVDMContext)
+{
+ UNIMPLEMENTED;
+ return FALSE;
+}
+
+
+BOOL WINAPI VDMGetSelectorModule( HANDLE handle,
+ HANDLE handle2,
+ WORD word,
+ PUINT punit,
+ LPSTR lpModuleName,
+ UINT uInt,
+ LPSTR lpstr,
+ UINT uInt2 )
+{
+ UNIMPLEMENTED;
+ return FALSE;
+}
+
+
+BOOL WINAPI VDMGetModuleSelector( HANDLE handle,
+ HANDLE handle2,
+ UINT uInt,
+ LPSTR lpModuleName,
+ LPWORD lpword )
+{
+ UNIMPLEMENTED;
+ return FALSE;
+}
+
+BOOL WINAPI VDMModuleFirst( HANDLE handle,
+ HANDLE
handle2,
+ LPMODULEENTRY lpModuleEntry,
+ DEBUGEVENTPROC lpDebugEventProc,
+ LPVOID lpvoid )
+{
+ UNIMPLEMENTED;
+ return FALSE;
+}
+
+BOOL WINAPI VDMGlobalFirst( HANDLE handle,
+ HANDLE handle2,
+ LPGLOBALENTRY lpGlobalEntry,
+ WORD word,
+ DEBUGEVENTPROC lpDebugEventProc,
+ LPVOID lpvoid )
+{
+ UNIMPLEMENTED;
+ return FALSE;
+}
+
+BOOL WINAPI VDMGlobalNext( HANDLE handle,
+ HANDLE handle2,
+ LPGLOBALENTRY lpGlobalEntry,
+ WORD word,
+ DEBUGEVENTPROC lpDebugEventProc,
+ LPVOID lpvoid )
+{
+ UNIMPLEMENTED;
+ return FALSE;
+}
+
+BOOL WINAPI VDMModuleNext( HANDLE handle,
+ HANDLE handle2,
+ LPMODULEENTRY lpModuleEntry,
+ DEBUGEVENTPROC lpDebugEventProc,
+ LPVOID lpvoid )
+{
+ UNIMPLEMENTED;
+ return FALSE;
+}
+
BOOL STDCALL
-DllMain(IN HINSTANCE hinstDLL,
- IN DWORD dwReason,
- IN LPVOID lpvReserved)
+DllMain( IN HINSTANCE hinstDLL,
+ IN DWORD dwReason,
+ IN LPVOID lpvReserved )
{
switch (dwReason)
{
_____
Modified: trunk/reactos/lib/vdmdbg/vdmdbg.def
--- trunk/reactos/lib/vdmdbg/vdmdbg.def 2005-10-14 22:04:02 UTC (rev
18460)
+++ trunk/reactos/lib/vdmdbg/vdmdbg.def 2005-10-14 22:31:06 UTC (rev
18461)
@@ -29,28 +29,28 @@
VDMBreakThread@8
VDMDetectWOW@0
VDMEnumProcessWOW@8
-;VDMEnumTaskWOW@12
+VDMEnumTaskWOW@12
VDMEnumTaskWOWEx@12
;VDMGetAddrExpression@20
-;VDMGetContext@12
-;VDMGetDbgFlags@4
-;VDMGetModuleSelector@20
-;VDMGetPointer@20
-;VDMGetSegmentInfo@16
+VDMGetContext@12
+VDMGetDbgFlags@4
+VDMGetModuleSelector@20
+VDMGetPointer@20
+VDMGetSegmentInfo@16
;VDMGetSegtablePointer@0
-;VDMGetSelectorModule@32
+VDMGetSelectorModule@32
;VDMGetSymbol@28
;VDMGetThreadContext@8
;VDMGetThreadSelectorEntry@16
-;VDMGlobalFirst@24
-;VDMGlobalNext@24
-;VDMIsModuleLoaded@4
-;VDMKillWOW@0
-;VDMModuleFirst@20
-;VDMModuleNext@20
-;VDMProcessException@4
-;VDMSetContext@12
-;VDMSetDbgFlags@8
+VDMGlobalFirst@24
+VDMGlobalNext@24
+VDMIsModuleLoaded@4
+VDMKillWOW@0
+VDMModuleFirst@20
+VDMModuleNext@20
+VDMProcessException@4
+VDMSetContext@12
+VDMSetDbgFlags@8
;VDMSetThreadContext@8
-;VDMStartTaskInWOW@12
+VDMStartTaskInWOW@12
VDMTerminateTaskWOW@8
_____
Modified: trunk/reactos/lib/vdmdbg/vdmdbg.h
--- trunk/reactos/lib/vdmdbg/vdmdbg.h 2005-10-14 22:04:02 UTC (rev
18460)
+++ trunk/reactos/lib/vdmdbg/vdmdbg.h 2005-10-14 22:31:06 UTC (rev
18461)
@@ -1,24 +1,73 @@
#include <windows.h>
+#define MAX_PATH16 255
+#define MAX_MODULE_NAME 9
+
ULONG DbgPrint(PCH Format,...);
+typedef struct _CONTEXT VDMCONTEXT;
+typedef VDMCONTEXT *LPVDMCONTEXT;
+
+typedef struct _VDM_SEGINFO {
+ WORD Selector;
+ WORD SegNumber;
+ DWORD Length;
+ WORD Type;
+ CHAR ModuleName[MAX_MODULE_NAME];
+ CHAR FileName[MAX_PATH16];
+} VDM_SEGINFO;
+
+typedef struct {
+ DWORD dwSize;
+ char szModule[MAX_MODULE_NAME+1];
+ HANDLE hModule;
+ WORD wcUsage;
+ char szExePath[MAX_PATH16+1];
+ WORD wNext;
+} MODULEENTRY, *LPMODULEENTRY;
+
typedef BOOL ( WINAPI *PROCESSENUMPROC )
(
- DWORD dwProcessId,
- DWORD dwAttributes,
+ DWORD dwProcessId,
+ DWORD dwAttributes,
LPARAM lpUserDefined
);
typedef BOOL ( WINAPI *TASKENUMPROCEX )
(
DWORD dwThreadId,
- WORD hMod16,
- WORD hTask16,
- PSZ pszModName,
- PSZ pszFileName,
+ WORD hMod16,
+ WORD hTask16,
+ PSZ pszModName,
+ PSZ pszFileName,
LPARAM lpUserDefined
);
+typedef struct {
+ DWORD dwSize;
+ DWORD dwAddress;
+ DWORD dwBlockSize;
+ HANDLE hBlock;
+ WORD wcLock;
+ WORD wcPageLock;
+ WORD wFlags;
+ BOOL wHeapPresent;
+ HANDLE hOwner;
+ WORD wType;
+ WORD wData;
+ DWORD dwNext;
+ DWORD dwNextAlt;
+} GLOBALENTRY, *LPGLOBALENTRY;
+
+typedef DWORD ( CALLBACK* DEBUGEVENTPROC )
+ ( LPDEBUG_EVENT, LPVOID );
+
+typedef BOOL ( WINAPI *TASKENUMPROC )
+ ( DWORD dwThreadId,
+ WORD hMod16,
+ WORD hTask16,
+ LPARAM lpUserDefined );
+
extern HINSTANCE hDllInstance;
/* EOF */