|
|
//----------------------------------------------------------------------------
//
// memcmd.h
//
// Copyright (C) Microsoft Corporation, 1997-2001.
//
//----------------------------------------------------------------------------
#ifndef _MEMCMD_H_
#define _MEMCMD_H_
extern ULONG64 EXPRLastDump; extern ADDR g_DumpDefault;
#define GetMemByte(addr, value) \
(BOOL)(GetMemString(addr, value, sizeof(UCHAR)) == sizeof(UCHAR))
#define GetMemWord(addr, value) \
(BOOL)(GetMemString(addr, (PUCHAR)value, sizeof(USHORT)) == \ sizeof(USHORT))
#define GetMemDword(addr, value) \
(BOOL)(GetMemString(addr, (PUCHAR)value, sizeof(ULONG)) == \ sizeof(ULONG))
#define GetMemQword(addr, value) \
(BOOL)(GetMemString(addr, (PUCHAR)value, sizeof(ULONG64)) == \ sizeof(ULONG64))
#define GetMemString(Addr, Value, Length) \
GetProcessMemString(g_CurrentProcess, Addr, Value, Length) #define SetMemString(Addr, Value, Length) \
SetProcessMemString(g_CurrentProcess, Addr, Value, Length)
ULONG GetProcessMemString( PPROCESS_INFO Process, PADDR Addr, PVOID Value, ULONG Length );
ULONG SetProcessMemString( PPROCESS_INFO Process, PADDR Addr, PVOID Value, ULONG Length );
void parseDumpCommand(void); void parseEnterCommand(void);
ULONG fnDumpAsciiMemory(PADDR, ULONG); ULONG fnDumpUnicodeMemory (PADDR startaddr, ULONG count); void fnDumpByteMemory(PADDR, ULONG); void fnDumpWordMemory(PADDR, ULONG); void fnDumpDwordMemory(PADDR startaddr, ULONG count, BOOL fDumpSymbols); void fnDumpDwordAndCharMemory(PADDR, ULONG); void fnDumpListMemory(PADDR, ULONG, ULONG, BOOL); void fnDumpFloatMemory(PADDR Start, ULONG Count); void fnDumpDoubleMemory(PADDR Start, ULONG Count); void fnDumpQuadMemory(PADDR Start, ULONG Count, BOOL fDumpSymbols); void fnDumpByteBinaryMemory(PADDR startaddr, ULONG count); void fnDumpDwordBinaryMemory(PADDR startaddr, ULONG count); void fnDumpSelector(ULONG Selector);
void fnInteractiveEnterMemory(PADDR, ULONG); void fnEnterMemory(PADDR, PUCHAR, ULONG);
void fnCompareMemory(PADDR, ULONG, PADDR); void fnMoveMemory(PADDR, ULONG, PADDR);
void ParseFillMemory(void); void ParseSearchMemory(void);
void fnInputIo(ULONG64, UCHAR); void fnOutputIo (ULONG64, ULONG, UCHAR);
#endif // #ifndef _MEMCMD_H_
|