mirror of https://github.com/lianthony/NT4.0
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
109 lines
2.8 KiB
109 lines
2.8 KiB
/*++
|
|
|
|
Copyright (c) 1993 Microsoft Corporation
|
|
|
|
Module Name:
|
|
|
|
proto.h
|
|
|
|
Abstract:
|
|
|
|
Prototypes for drwatson.
|
|
|
|
Author:
|
|
|
|
Wesley Witt (wesw) 1-May-1993
|
|
|
|
Environment:
|
|
|
|
User Mode
|
|
|
|
--*/
|
|
|
|
#include <imagehlp.h>
|
|
|
|
// error.c
|
|
void NonFatalError(char *format, ...);
|
|
void FatalError(char *format, ...);
|
|
void AssertError( char *exp, char * file, DWORD line );
|
|
void dprintf(char *format, ...);
|
|
|
|
//log.c
|
|
void OpenLogFile( char *szFileName, BOOL fAppend, BOOL fVisual );
|
|
void CloseLogFile( void );
|
|
void lprintfs(char *format, ...);
|
|
void lprintf(DWORD dwFormatId, ...);
|
|
void MakeLogFileName( char *szName );
|
|
char * GetLogFileData( LPDWORD dwLogFileDataSize );
|
|
|
|
// walk.c
|
|
LPVOID SwFunctionTableAccess( HANDLE hProcess, DWORD dwPCAddr );
|
|
DWORD SwGetModuleBase( HANDLE hProcess, DWORD ReturnAddress );
|
|
BOOL SwReadProcessMemory( HANDLE hProcess, LPCVOID lpBaseAddress, LPVOID lpBuffer, DWORD nSize, LPDWORD lpNumberOfBytesRead );
|
|
DWORD SwTranslateAddress( HANDLE hProcess, HANDLE hThread, LPADDRESS lpaddr );
|
|
|
|
// regs.c
|
|
void OutputAllRegs(PDEBUGPACKET dp, BOOL Show64);
|
|
DWORDLONG GetRegValue(PDEBUGPACKET dp, ULONG regnum);
|
|
DWORDLONG GetRegFlagValue (PDEBUGPACKET dp, ULONG regnum);
|
|
|
|
// disasm.c
|
|
BOOLEAN disasm( PDEBUGPACKET dp, PULONG pOffset, PUCHAR pchDst, BOOLEAN fEAout );
|
|
|
|
// symbols.c
|
|
void DumpSymbols( PDEBUGPACKET dp );
|
|
|
|
// module.c
|
|
BOOL ProcessModuleLoad ( PDEBUGPACKET dp, LPDEBUG_EVENT de );
|
|
|
|
// debug.c
|
|
DWORD DispatchDebugEventThread( PDEBUGPACKET dp );
|
|
DWORD TerminationThread( PDEBUGPACKET dp );
|
|
BOOL DoMemoryRead(PDEBUGPACKET dp, LPCVOID addr, LPVOID buf, DWORD size, LPDWORD lpcb);
|
|
|
|
// registry.c
|
|
BOOL RegInitialize( POPTIONS o );
|
|
BOOL RegSave( POPTIONS o );
|
|
DWORD RegGetNumCrashes( void );
|
|
void RegSetNumCrashes( DWORD dwNumCrashes );
|
|
void RegLogCurrentVersion( void );
|
|
BOOLEAN RegInstallDrWatson( BOOL fQuiet );
|
|
void RegLogProcessorType( void );
|
|
|
|
// eventlog.c
|
|
BOOL ElSaveCrash( PCRASHES crash, DWORD dwNumCrashes );
|
|
BOOL ElEnumCrashes( PCRASHINFO crashInfo, CRASHESENUMPROC lpEnumFunc );
|
|
BOOL ElClearAllEvents( void );
|
|
|
|
// process.c
|
|
void LogTaskList( void );
|
|
void LogProcessInformation( HANDLE hProcess );
|
|
void GetTaskName( ULONG pid, char *szTaskName, LPDWORD pdwSize );
|
|
|
|
// context.c
|
|
void GetContextForThread( PDEBUGPACKET dp );
|
|
|
|
// browse.c
|
|
BOOL BrowseForDirectory( char *szCurrDir );
|
|
BOOL GetWaveFileName( char *szWaveName );
|
|
BOOL GetDumpFileName( char *szDumpName );
|
|
|
|
// notify.c
|
|
void NotifyWinMain ( void );
|
|
BOOLEAN GetCommandLineArgs( LPDWORD dwPidToDebug, LPHANDLE hEventToSignal );
|
|
|
|
// ui.c
|
|
void DrWatsonWinMain ( void );
|
|
|
|
// util.c
|
|
void GetAppName( char *pszAppName, DWORD len );
|
|
void GetHelpFileName( char *pszHelpFileName, DWORD len );
|
|
char * LoadRcString( UINT wId );
|
|
|
|
// controls.c
|
|
BOOL SubclassControls( HWND hwnd );
|
|
void SetFocusToCurrentControl( void );
|
|
|
|
// dump.c
|
|
BOOL CreateDumpFile( PDEBUGPACKET dp, LPEXCEPTION_DEBUG_INFO ed );
|
|
|