|
|
1.1 ! root 1: // ************************************************************************ ! 2: // HEADER : DEBMain.H ! 3: // PURPOSE : A Win32 Application demonstrating the Debug APIs ! 4: // FUNCTIONS : ! 5: // WinMain() - application entry point ! 6: // MainWndProc() - processes messages ! 7: // ProcessCommandsWndProc() - processes WM_COMMAND messages ! 8: // PreferencesDlgProc() - processes messages for "Preferences" dialog box ! 9: // AttachDlgProc() - processes messages for "Attach" dialog box ! 10: // AboutDlgProc() - processes messages for "About" dialog box ! 11: // NewListBoxWndProc() - subclass procedure to prevent listbox moving ! 12: // COMMENTS : ! 13: // ************************************************************************ ! 14: #include "DEB.H" // resource and message ids ! 15: ! 16: //-- function prototypes ! 17: LRESULT CALLBACK MainWndProc ( HWND, UINT, WPARAM, LPARAM ); ! 18: LRESULT CALLBACK ProcessCommandsWndProc ( HWND, UINT, WPARAM, LPARAM ); ! 19: LRESULT CALLBACK NewListBoxWndProc ( HWND, UINT, WPARAM, LPARAM ); ! 20: BOOL CALLBACK PreferencesDlgProc ( HWND, UINT, WPARAM, LPARAM ); ! 21: LRESULT CALLBACK MainWndProc ( HWND, UINT, WPARAM, LPARAM ); ! 22: BOOL CALLBACK AttachDlgProc ( HWND, UINT, WPARAM, LPARAM ); ! 23: BOOL CALLBACK AboutDlgProc ( HWND, UINT, WPARAM, LPARAM ); ! 24: ! 25: // *********** ! 26: // global data ! 27: // *********** ! 28: extern HWND hWndMain; // main window handle ! 29: extern HWND hWndDebugList; // debug event listbox handle ! 30: extern HWND hWndTextButtonBar; // windows handle to the text toolbar ! 31: extern HINSTANCE hInstance; // instance handle of this EXE ! 32: extern LIST ProcessList; // linked list of debugee process information ! 33: extern INT ActiveProcesses; // count of active debugee processes ! 34: extern TCHAR szAppTitle[32]; // name of the application ! 35: extern HANDLE hProcess; // handle to current running debugee process ! 36: extern LONG MaxStrLen; // maximum string length in Debug Event listbox ! 37: ! 38: //-- debugee specific data ! 39: extern PROCESS_INFORMATION pi; // process information ! 40: extern STARTUPINFO si; // debugee startup information ! 41: ! 42: //-- private profile settings ! 43: extern int xPos; // application window's horizontal position ! 44: extern int yPos; // application window's vertical position ! 45: extern int nWidth; // application window's width ! 46: extern int nHeight; // application window's height ! 47: extern BOOL fMaximized; // flag: maximized state? ! 48: extern BOOL fToolBar; // flag: display the ToolBar? ! 49: extern BOOL fSaveOnExit; // flag: save settings upon exit? ! 50: extern BOOL fSavedDirectory; // flag: use saved directory for opening files? ! 51: extern BOOL fClearOnNew; // flag: clears the event listbox on a new debugee ! 52: extern BOOL fVerbose; // flag: verbose event listings ! 53: extern BOOL fShowSymbols; // flag: show symbols (limited) ! 54: extern BOOL fSavePreferences; // flag: save the preferences settings ! 55: extern HFONT hFont; // current handle to the Debug Event listbox font ! 56: extern LOGFONT LogFont; // current logical font ! 57: extern COLORREF rgbColor; // current listbox text foreground color ! 58: extern COLORREF rgbBkColor; // current listbox text foreground color ! 59: extern LONG DebugMode; // debug mode flag CreateProcess ! 60: extern LONG DebugeePriority; // debugee priority CreateProcess
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.