Leaked source code of windows server 2003
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.
 
 
 
 
 
 

254 lines
12 KiB

#undef DEBUGGING
#include <windows.h>
#include <commctrl.h>
#define VER_FILETYPE VFT_APP
#define VER_FILESUBTYPE VFT2_UNKNOWN
#define VER_FILEDESCRIPTION_STR "Windows GUI symbolic debugger"
#define VER_INTERNALNAME_STR "windbg.exe\0"
#define VER_ORIGINALFILENAME_STR "windbg.exe\0"
#include <dbgver.h>
#include "windbg.h"
#include "dialogs.h"
#include "menu.h"
#include "dialogs.dlg"
#include "resource.h"
HELPCURSOR CURSOR "bitmaps/help.cur"
WINDBGICON ICON "bitmaps/windbg.ico"
DOCICON ICON "bitmaps/source.ico"
CPUICON ICON "bitmaps/reg.ico"
LOCALSICON ICON "bitmaps/local.ico"
WATCHICON ICON "bitmaps/watch.ico"
DISASMICON ICON "bitmaps/asm.ico"
CMDICON ICON "bitmaps/ncmdwin.ico"
SPADICON ICON "bitmaps/spad.ico"
MEMORYICON ICON "bitmaps/memory.ico"
CALLSTACKICON ICON "bitmaps/stack.ico"
PROCTHREADICON ICON "bitmaps/procthrd.ico"
//
// Bitmaps for Windbg buttons.
//
IDB_BMP_TOOLBAR BITMAP "bitmaps/toolbar.bmp"
MAIN_MENU MENU
BEGIN
POPUP "&File"
BEGIN
MENUITEM "&Open Source File...\tCtrl+O", IDM_FILE_OPEN
MENUITEM "&Close Current Window\tCtrl+F4", IDM_FILE_CLOSE
MENUITEM SEPARATOR
MENUITEM "Open &Executable...\tCtrl+E", IDM_FILE_OPEN_EXECUTABLE
MENUITEM "A&ttach to a Process...\tF6", IDM_FILE_ATTACH
MENUITEM "Open Crash &Dump...\tCtrl+D", IDM_FILE_OPEN_CRASH_DUMP
MENUITEM "Connect to &Remote Session...\tCtrl+R", IDM_FILE_CONNECT_TO_REMOTE
MENUITEM "&Kernel Debug...\tCtrl+K", IDM_FILE_KERNEL_DEBUG
MENUITEM SEPARATOR
MENUITEM "&Symbol File Path ...\tCtrl+S", IDM_FILE_SYMBOL_PATH
MENUITEM "Source File &Path ...\tCtrl+P", IDM_FILE_SOURCE_PATH
MENUITEM "&Image File Path ...\tCtrl+I", IDM_FILE_IMAGE_PATH
MENUITEM SEPARATOR
MENUITEM "Open &Workspace...\tCtrl+W", IDM_FILE_OPEN_WORKSPACE
MENUITEM "Save Workspace", IDM_FILE_SAVE_WORKSPACE
MENUITEM "Save Workspace &As...", IDM_FILE_SAVE_WORKSPACE_AS
MENUITEM "Clear Workspace...", IDM_FILE_CLEAR_WORKSPACE
MENUITEM "Delete Workspaces...", IDM_FILE_DELETE_WORKSPACES
MENUITEM "Open Workspace in File...", IDM_FILE_OPEN_WORKSPACE_FILE
MENUITEM "Save Workspace to File...", IDM_FILE_SAVE_WORKSPACE_FILE
MENUITEM SEPARATOR
MENUITEM "Map Network Drive...", IDM_FILE_MAP_NET_DRIVE,
MENUITEM "Disconnect Network Drive...", IDM_FILE_DISCONN_NET_DRIVE,
MENUITEM SEPARATOR
POPUP "Recent &Files"
BEGIN
MENUITEM "Recent File", IDM_FILE_MRU_FILE1, GRAYED
END
MENUITEM SEPARATOR
MENUITEM "E&xit\aAlt+F4", IDM_FILE_EXIT
END
POPUP "&Edit"
BEGIN
MENUITEM "Cu&t\tCtrl+X", IDM_EDIT_CUT
MENUITEM "&Copy\tCtrl+C", IDM_EDIT_COPY
MENUITEM "&Paste\tCtrl+V", IDM_EDIT_PASTE
MENUITEM "Select &All\tCtrl+A", IDM_EDIT_SELECT_ALL
MENUITEM "&Write Window Text to File", IDM_EDIT_WRITE_TEXT_TO_FILE,
MENUITEM "&Add to Command Output", IDM_EDIT_ADD_TO_COMMAND_HISTORY
MENUITEM "Clear Command O&utput", IDM_EDIT_CLEAR_COMMAND_HISTORY
MENUITEM SEPARATOR
MENUITEM "&Find...\tCtrl+F", IDM_EDIT_FIND, GRAYED
MENUITEM "Find &Next\tF3", IDM_EDIT_FIND_NEXT, GRAYED
MENUITEM SEPARATOR
MENUITEM "&Go to Address...\tCtrl+G", IDM_EDIT_GOTO_ADDRESS, GRAYED
MENUITEM "Go to &Line...\tCtrl+L", IDM_EDIT_GOTO_LINE, GRAYED
MENUITEM "Go to Current &Instruction...\tAlt+Keypad *", IDM_EDIT_GOTO_CURRENT_IP, GRAYED
MENUITEM SEPARATOR
MENUITEM "&Breakpoints...\tAlt+F9", IDM_EDIT_BREAKPOINTS
MENUITEM "&Open/Close Log File...", IDM_EDIT_LOG_FILE
MENUITEM SEPARATOR
MENUITEM "&Properties...", IDM_EDIT_PROPERTIES, GRAYED
END
POPUP "&View"
BEGIN
MENUITEM "&Command\tAlt+1", IDM_VIEW_COMMAND
MENUITEM "&Watch\tAlt+2", IDM_VIEW_WATCH
MENUITEM "&Locals\tAlt+3", IDM_VIEW_LOCALS
MENUITEM "&Registers\tAlt+4", IDM_VIEW_REGISTERS
MENUITEM "&Memory\tAlt+5", IDM_VIEW_MEMORY
MENUITEM "Call Stac&k\tAlt+6", IDM_VIEW_CALLSTACK
MENUITEM "&Disassembly\tAlt+7", IDM_VIEW_DISASM
MENUITEM "&Scratch Pad\tAlt+8", IDM_VIEW_SCRATCH
MENUITEM "Processes and Threads\tAlt+9", IDM_VIEW_PROCESS_THREAD
MENUITEM SEPARATOR
MENUITEM "&Verbose Output\tCtrl+Alt+V", IDM_VIEW_TOGGLE_VERBOSE
MENUITEM "Sho&w Version\tCtrl+Alt+W", IDM_VIEW_SHOW_VERSION
MENUITEM SEPARATOR
MENUITEM "Tool&bar", IDM_VIEW_TOOLBAR, CHECKED
MENUITEM "&Status Bar", IDM_VIEW_STATUS, CHECKED
MENUITEM SEPARATOR
MENUITEM "Fo&nt...", IDM_VIEW_FONT
MENUITEM "&Options...", IDM_VIEW_OPTIONS
END
POPUP "&Debug"
BEGIN
MENUITEM "&Go\tF5", IDM_DEBUG_GO
MENUITEM "Go &Unhandled Exception", IDM_DEBUG_GO_UNHANDLED
MENUITEM "Go &Handled Exception", IDM_DEBUG_GO_HANDLED
MENUITEM "&Restart\tCtrl+Shift+F5", IDM_DEBUG_RESTART
MENUITEM "Stop &Debugging\tShift+F5", IDM_DEBUG_STOPDEBUGGING
MENUITEM "&Break\tCtrl+Break", IDM_DEBUG_BREAK
MENUITEM SEPARATOR
MENUITEM "Step &Into\tF11 or F8", IDM_DEBUG_STEPINTO
MENUITEM "Step &Over\tF10", IDM_DEBUG_STEPOVER
MENUITEM "Step Out\tShift+F11", IDM_DEBUG_STEPOUT
MENUITEM "Run to &Cursor\tCtrl+F10 or F7", IDM_DEBUG_RUNTOCURSOR
MENUITEM SEPARATOR
MENUITEM "&Source Mode", IDM_DEBUG_SOURCE_MODE, CHECKED
MENUITEM SEPARATOR
MENUITEM "&Event Filters...", IDM_DEBUG_EVENT_FILTERS
MENUITEM "&Modules...", IDM_DEBUG_MODULES
MENUITEM SEPARATOR
POPUP "&Kernel Connection"
BEGIN
MENUITEM "Cycle B&aud Rate\tCtrl+Alt+A", IDM_KDEBUG_TOGGLE_BAUDRATE
MENUITEM "Cycle Initial Break\tCtrl+Alt+K", IDM_KDEBUG_TOGGLE_INITBREAK
MENUITEM "Resynchronize\tCtrl+Alt+R", IDM_KDEBUG_RECONNECT
END
END
POPUP "&Window"
BEGIN
MENUITEM "C&ascade", IDM_WINDOW_CASCADE
MENUITEM "Tile &Horizontally", IDM_WINDOW_TILE_HORZ
MENUITEM "Tile &Vertically", IDM_WINDOW_TILE_VERT
MENUITEM "Arran&ge", IDM_WINDOW_ARRANGE
MENUITEM "Arrange &Icons", IDM_WINDOW_ARRANGE_ICONS
MENUITEM "Close All S&ource Windows", IDM_WINDOW_CLOSE_ALL_DOCWIN
MENUITEM SEPARATOR
MENUITEM "A&uto-arrange", IDM_WINDOW_AUTO_ARRANGE
MENUITEM "A&rrange All Windows", IDM_WINDOW_ARRANGE_ALL
MENUITEM "Overlay &Source", IDM_WINDOW_OVERLAY_SOURCE
MENUITEM "Automatically Open &Disassembly", IDM_WINDOW_AUTO_DISASM
END
POPUP "&Help"
BEGIN
MENUITEM "&Contents", IDM_HELP_CONTENTS
MENUITEM "&Index", IDM_HELP_INDEX
MENUITEM "&Search", IDM_HELP_SEARCH
MENUITEM SEPARATOR
MENUITEM "&About...", IDM_HELP_ABOUT
END
END
//
// Default accelerators
//
MAIN_ACC ACCELERATORS
BEGIN
// File Menu
"O", IDM_FILE_OPEN, VIRTKEY, CONTROL
"E", IDM_FILE_OPEN_EXECUTABLE, VIRTKEY, CONTROL
VK_F6, IDM_FILE_ATTACH, VIRTKEY
"D", IDM_FILE_OPEN_CRASH_DUMP, VIRTKEY, CONTROL
"K", IDM_FILE_KERNEL_DEBUG, VIRTKEY, CONTROL
"P", IDM_FILE_SOURCE_PATH, VIRTKEY, CONTROL
"S", IDM_FILE_SYMBOL_PATH, VIRTKEY, CONTROL
"R", IDM_FILE_CONNECT_TO_REMOTE, VIRTKEY, CONTROL
"I", IDM_FILE_IMAGE_PATH, VIRTKEY, CONTROL
VK_F4, IDM_FILE_EXIT, VIRTKEY, ALT
"W", IDM_FILE_OPEN_WORKSPACE, VIRTKEY, CONTROL
// Edit Menu
// CUA compliant & old style
"X", IDM_EDIT_CUT, VIRTKEY, CONTROL
VK_DELETE, IDM_EDIT_CUT, VIRTKEY, SHIFT
"C", IDM_EDIT_COPY, VIRTKEY, CONTROL
VK_INSERT, IDM_EDIT_COPY, VIRTKEY, CONTROL
"V", IDM_EDIT_PASTE, VIRTKEY, CONTROL
VK_INSERT, IDM_EDIT_PASTE, VIRTKEY, SHIFT
"A", IDM_EDIT_SELECT_ALL, VIRTKEY, CONTROL
"F", IDM_EDIT_FIND, VIRTKEY, CONTROL
VK_F3, IDM_EDIT_FIND_NEXT, VIRTKEY
VK_F3, IDM_EDIT_FIND_NEXT, VIRTKEY, SHIFT
"G", IDM_EDIT_GOTO_ADDRESS, VIRTKEY, CONTROL
"L", IDM_EDIT_GOTO_LINE, VIRTKEY, CONTROL
VK_MULTIPLY,IDM_EDIT_GOTO_CURRENT_IP, VIRTKEY, ALT
VK_F9, IDM_EDIT_BREAKPOINTS, VIRTKEY, ALT
VK_F9, IDM_EDIT_TOGGLEBREAKPOINT, VIRTKEY
// Debug Menu
VK_F5, IDM_DEBUG_GO, VIRTKEY
VK_F5, IDM_DEBUG_RESTART, VIRTKEY, SHIFT, CONTROL
VK_F5, IDM_DEBUG_STOPDEBUGGING, VIRTKEY, SHIFT
VK_CANCEL, IDM_DEBUG_BREAK, VIRTKEY, CONTROL
// Old Key
VK_F7, IDM_DEBUG_RUNTOCURSOR, VIRTKEY
// New Key
VK_F10, IDM_DEBUG_RUNTOCURSOR, VIRTKEY, CONTROL
// Old key
VK_F8, IDM_DEBUG_STEPINTO, VIRTKEY
// New key
VK_F11, IDM_DEBUG_STEPINTO, VIRTKEY
VK_F10, IDM_DEBUG_STEPOVER, VIRTKEY
VK_F11, IDM_DEBUG_STEPOUT, VIRTKEY, SHIFT
"A", IDM_KDEBUG_TOGGLE_BAUDRATE, VIRTKEY, CONTROL, ALT
"D", IDM_KDEBUG_TOGGLE_DEBUG, VIRTKEY, CONTROL, ALT
"K", IDM_KDEBUG_TOGGLE_INITBREAK,VIRTKEY, CONTROL, ALT
"R", IDM_KDEBUG_RECONNECT, VIRTKEY, CONTROL, ALT
"V", IDM_VIEW_TOGGLE_VERBOSE, VIRTKEY, CONTROL, ALT
"W", IDM_VIEW_SHOW_VERSION, VIRTKEY, CONTROL, ALT
"1", IDM_VIEW_COMMAND, VIRTKEY, ALT
"2", IDM_VIEW_WATCH, VIRTKEY, ALT
"3", IDM_VIEW_LOCALS, VIRTKEY, ALT
"4", IDM_VIEW_REGISTERS, VIRTKEY, ALT
"5", IDM_VIEW_MEMORY, VIRTKEY, ALT
"6", IDM_VIEW_CALLSTACK, VIRTKEY, ALT
"7", IDM_VIEW_DISASM, VIRTKEY, ALT
"8", IDM_VIEW_SCRATCH, VIRTKEY, ALT
"9", IDM_VIEW_PROCESS_THREAD, VIRTKEY, ALT
"1", IDM_VIEW_COMMAND, VIRTKEY, ALT, SHIFT
"2", IDM_VIEW_WATCH, VIRTKEY, ALT, SHIFT
"3", IDM_VIEW_LOCALS, VIRTKEY, ALT, SHIFT
"4", IDM_VIEW_REGISTERS, VIRTKEY, ALT, SHIFT
"5", IDM_VIEW_MEMORY, VIRTKEY, ALT, SHIFT
"6", IDM_VIEW_CALLSTACK, VIRTKEY, ALT, SHIFT
"7", IDM_VIEW_DISASM, VIRTKEY, ALT, SHIFT
"8", IDM_VIEW_SCRATCH, VIRTKEY, ALT, SHIFT
"9", IDM_VIEW_PROCESS_THREAD, VIRTKEY, ALT, SHIFT
END
// Define the string table
#include <res_str.i>