diff --git a/trunk/Injector/Injector.cpp b/trunk/Injector/Injector.cpp index eedf6dde4..067905e3f 100644 --- a/trunk/Injector/Injector.cpp +++ b/trunk/Injector/Injector.cpp @@ -39,7 +39,8 @@ typedef BOOL (__stdcall *RCloseHandle)(HANDLE handle); #define MAX_CODE 8192 #define MODE_CMDLINE 1 -#define MODE_CREATEPROCESS 2 +#define MODE_CREATEPROCESSA 2 +#define MODE_CREATEPROCESSC 3 struct data_struct { @@ -52,13 +53,15 @@ struct data_struct }; wchar_t *GetWinStaDesktop(); -DWORD __stdcall Cp(data_struct *data); +DWORD __stdcall CpApp(data_struct *data); +DWORD __stdcall CpCmd(data_struct *data); DWORD __stdcall GRcl(data_struct *data); BOOL EnableTokenPrivilege(LPCTSTR pszPrivilege); int _tmain(int argc, wchar_t *argv[]) { HANDLE handle = 0; + DWORD old_protect; DWORD pid; wchar_t *mode_str; DWORD mode = 0; @@ -86,7 +89,11 @@ int _tmain(int argc, wchar_t *argv[]) if (wcscmp(mode_str, _T("cmdline")) == 0) mode = MODE_CMDLINE; else if (wcscmp(mode_str, _T("createprocess")) == 0) - mode = MODE_CREATEPROCESS; + mode = MODE_CREATEPROCESSA; + else if (wcscmp(mode_str, _T("createprocessa")) == 0) + mode = MODE_CREATEPROCESSA; + else if (wcscmp(mode_str, _T("createprocessc")) == 0) + mode = MODE_CREATEPROCESSC; else { printf("Invalid mode"); @@ -126,8 +133,10 @@ int _tmain(int argc, wchar_t *argv[]) if (mode == MODE_CMDLINE) local_code = &GRcl; - else if (mode == MODE_CREATEPROCESS) - local_code = &Cp; + else if (mode == MODE_CREATEPROCESSA) + local_code = &CpApp; + else if (mode == MODE_CREATEPROCESSC) + local_code = &CpCmd; if (!WriteProcessMemory(handle, remote_code, local_code, MAX_CODE, 0)) { @@ -136,6 +145,9 @@ int _tmain(int argc, wchar_t *argv[]) goto clean_up; } + if (!VirtualProtectEx(handle, remote_code, MAX_CODE, PAGE_EXECUTE, &old_protect)) + printf("Warning: could not set page protection on code to PAGE_EXECUTE\n"); + if (!(kernel32 = LoadLibrary(L"kernel32.dll"))) { printf("Could not load kernel32.dll!"); @@ -251,11 +263,63 @@ wchar_t *GetWinStaDesktop() return result; } -DWORD __stdcall Cp(data_struct *data) +DWORD __stdcall CpApp(data_struct *data) { STARTUPINFOW startup_info; PROCESS_INFORMATION proc_info; + startup_info.cbReserved2 = 0; + startup_info.dwFillAttribute = 0; + startup_info.dwX = 0; + startup_info.dwXCountChars = 0; + startup_info.dwXSize = 0; + startup_info.dwY = 0; + startup_info.dwYCountChars = 0; + startup_info.dwYSize = 0; + startup_info.hStdError = 0; + startup_info.hStdInput = 0; + startup_info.hStdOutput = 0; + startup_info.lpReserved = 0; + startup_info.lpReserved2 = 0; + startup_info.lpTitle = 0; + startup_info.wShowWindow = 0; + startup_info.cb = sizeof(startup_info); + startup_info.lpDesktop = data->winsta_desktop; + startup_info.dwFlags = STARTF_FORCEONFEEDBACK; + + if (!data->fCPW(data->str, NULL, 0, 0, FALSE, 0, NULL, NULL, &startup_info, + &proc_info)) + { + data->last_error = 1; + return 1; + } + + data->fCH(proc_info.hProcess); + data->fCH(proc_info.hThread); + + return 0; +} + +DWORD __stdcall CpCmd(data_struct *data) +{ + STARTUPINFOW startup_info; + PROCESS_INFORMATION proc_info; + + startup_info.cbReserved2 = 0; + startup_info.dwFillAttribute = 0; + startup_info.dwX = 0; + startup_info.dwXCountChars = 0; + startup_info.dwXSize = 0; + startup_info.dwY = 0; + startup_info.dwYCountChars = 0; + startup_info.dwYSize = 0; + startup_info.hStdError = 0; + startup_info.hStdInput = 0; + startup_info.hStdOutput = 0; + startup_info.lpReserved = 0; + startup_info.lpReserved2 = 0; + startup_info.lpTitle = 0; + startup_info.wShowWindow = 0; startup_info.cb = sizeof(startup_info); startup_info.lpDesktop = data->winsta_desktop; startup_info.dwFlags = STARTF_FORCEONFEEDBACK; diff --git a/trunk/ProcessHacker/Forms/HackerWindow.Designer.cs b/trunk/ProcessHacker/Forms/HackerWindow.Designer.cs index a3dcb5f03..06d6e50d2 100644 --- a/trunk/ProcessHacker/Forms/HackerWindow.Designer.cs +++ b/trunk/ProcessHacker/Forms/HackerWindow.Designer.cs @@ -45,13 +45,46 @@ this.labelNewValue = new System.Windows.Forms.Label(); this.labelVirtualProtectInfo = new System.Windows.Forms.Label(); this.menuProcess = new System.Windows.Forms.ContextMenu(); + this.terminateMenuItem = new System.Windows.Forms.MenuItem(); + this.suspendMenuItem = new System.Windows.Forms.MenuItem(); + this.resumeMenuItem = new System.Windows.Forms.MenuItem(); + this.closeActiveWindowMenuItem = new System.Windows.Forms.MenuItem(); this.menuItem5 = new System.Windows.Forms.MenuItem(); + this.goToParentProcessMenuItem = new System.Windows.Forms.MenuItem(); + this.inspectProcessMenuItem = new System.Windows.Forms.MenuItem(); + this.privilegesMenuItem = new System.Windows.Forms.MenuItem(); + this.groupsMenuItem = new System.Windows.Forms.MenuItem(); + this.servicesProcessMenuItem = new System.Windows.Forms.MenuItem(); + this.priorityMenuItem = new System.Windows.Forms.MenuItem(); + this.realTimeMenuItem = new System.Windows.Forms.MenuItem(); + this.highMenuItem = new System.Windows.Forms.MenuItem(); + this.aboveNormalMenuItem = new System.Windows.Forms.MenuItem(); + this.normalMenuItem = new System.Windows.Forms.MenuItem(); + this.belowNormalMenuItem = new System.Windows.Forms.MenuItem(); + this.idleMenuItem = new System.Windows.Forms.MenuItem(); + this.injectorMenuItem = new System.Windows.Forms.MenuItem(); + this.startProcessProcessMenuItem = new System.Windows.Forms.MenuItem(); + this.getCommandLineProcessMenuItem = new System.Windows.Forms.MenuItem(); this.menuItem7 = new System.Windows.Forms.MenuItem(); this.searchProcessMenuItem = new System.Windows.Forms.MenuItem(); + this.copyProcessMenuItem = new System.Windows.Forms.MenuItem(); this.selectAllMenuItem = new System.Windows.Forms.MenuItem(); this.menuThread = new System.Windows.Forms.ContextMenu(); + this.inspectThreadMenuItem = new System.Windows.Forms.MenuItem(); + this.terminateThreadMenuItem = new System.Windows.Forms.MenuItem(); + this.suspendThreadMenuItem = new System.Windows.Forms.MenuItem(); + this.resumeThreadMenuItem = new System.Windows.Forms.MenuItem(); this.menuItem4 = new System.Windows.Forms.MenuItem(); + this.priorityThreadMenuItem = new System.Windows.Forms.MenuItem(); + this.timeCriticalThreadMenuItem = new System.Windows.Forms.MenuItem(); + this.highestThreadMenuItem = new System.Windows.Forms.MenuItem(); + this.aboveNormalThreadMenuItem = new System.Windows.Forms.MenuItem(); + this.normalThreadMenuItem = new System.Windows.Forms.MenuItem(); + this.belowNormalThreadMenuItem = new System.Windows.Forms.MenuItem(); + this.lowestThreadMenuItem = new System.Windows.Forms.MenuItem(); + this.idleThreadMenuItem = new System.Windows.Forms.MenuItem(); this.menuItem9 = new System.Windows.Forms.MenuItem(); + this.copyThreadMenuItem = new System.Windows.Forms.MenuItem(); this.selectAllThreadMenuItem = new System.Windows.Forms.MenuItem(); this.toolStripMenuItem9 = new System.Windows.Forms.ToolStripMenuItem(); this.toolStripMenuItem10 = new System.Windows.Forms.ToolStripMenuItem(); @@ -61,16 +94,28 @@ this.toolStripMenuItem14 = new System.Windows.Forms.ToolStripMenuItem(); this.toolStripMenuItem15 = new System.Windows.Forms.ToolStripMenuItem(); this.menuModule = new System.Windows.Forms.ContextMenu(); + this.goToInMemoryViewModuleMenuItem = new System.Windows.Forms.MenuItem(); this.getFuncAddressMenuItem = new System.Windows.Forms.MenuItem(); + this.changeMemoryProtectionModuleMenuItem = new System.Windows.Forms.MenuItem(); + this.readMemoryModuleMenuItem = new System.Windows.Forms.MenuItem(); + this.inspectModuleMenuItem = new System.Windows.Forms.MenuItem(); this.menuItem3 = new System.Windows.Forms.MenuItem(); this.searchModuleMenuItem = new System.Windows.Forms.MenuItem(); this.copyFileNameMenuItem = new System.Windows.Forms.MenuItem(); + this.copyModuleMenuItem = new System.Windows.Forms.MenuItem(); + this.openContainingFolderMenuItem = new System.Windows.Forms.MenuItem(); + this.propertiesMenuItem = new System.Windows.Forms.MenuItem(); this.menuItem6 = new System.Windows.Forms.MenuItem(); this.selectAllModuleMenuItem = new System.Windows.Forms.MenuItem(); this.menuMemory = new System.Windows.Forms.ContextMenu(); + this.changeMemoryProtectionMemoryMenuItem = new System.Windows.Forms.MenuItem(); + this.readWriteMemoryMemoryMenuItem = new System.Windows.Forms.MenuItem(); + this.readWriteAddressMemoryMenuItem = new System.Windows.Forms.MenuItem(); this.menuItem2 = new System.Windows.Forms.MenuItem(); + this.copyMemoryMenuItem = new System.Windows.Forms.MenuItem(); this.selectAllMemoryMenuItem = new System.Windows.Forms.MenuItem(); this.menuSearch = new System.Windows.Forms.ContextMenu(); + this.newResultsWindowMenuItem = new System.Windows.Forms.MenuItem(); this.literalSearchMenuItem = new System.Windows.Forms.MenuItem(); this.regexSearchMenuItem = new System.Windows.Forms.MenuItem(); this.stringScanMenuItem = new System.Windows.Forms.MenuItem(); @@ -79,6 +124,12 @@ this.hackerMenuItem = new System.Windows.Forms.MenuItem(); this.selectAllHackerMenuItem = new System.Windows.Forms.MenuItem(); this.menuItem1 = new System.Windows.Forms.MenuItem(); + this.inspectPEFileMenuItem = new System.Windows.Forms.MenuItem(); + this.logMenuItem = new System.Windows.Forms.MenuItem(); + this.aboutMenuItem = new System.Windows.Forms.MenuItem(); + this.optionsMenuItem = new System.Windows.Forms.MenuItem(); + this.helpMenuItem = new System.Windows.Forms.MenuItem(); + this.exitMenuItem = new System.Windows.Forms.MenuItem(); this.windowMenuItem = new System.Windows.Forms.MenuItem(); this.statusBar = new System.Windows.Forms.StatusBar(); this.statusGeneral = new System.Windows.Forms.StatusBarPanel(); @@ -112,68 +163,18 @@ this.tabServices = new System.Windows.Forms.TabPage(); this.listServices = new ProcessHacker.ServiceList(); this.menuService = new System.Windows.Forms.ContextMenu(); + this.goToProcessServiceMenuItem = new System.Windows.Forms.MenuItem(); + this.startServiceMenuItem = new System.Windows.Forms.MenuItem(); this.continueServiceMenuItem = new System.Windows.Forms.MenuItem(); + this.pauseServiceMenuItem = new System.Windows.Forms.MenuItem(); + this.stopServiceMenuItem = new System.Windows.Forms.MenuItem(); + this.deleteServiceMenuItem = new System.Windows.Forms.MenuItem(); + this.propertiesServiceMenuItem = new System.Windows.Forms.MenuItem(); this.menuItem8 = new System.Windows.Forms.MenuItem(); + this.copyServiceMenuItem = new System.Windows.Forms.MenuItem(); this.selectAllServiceMenuItem = new System.Windows.Forms.MenuItem(); this.vistaMenu = new wyDay.Controls.VistaMenu(this.components); - this.newResultsWindowMenuItem = new System.Windows.Forms.MenuItem(); - this.inspectPEFileMenuItem = new System.Windows.Forms.MenuItem(); - this.logMenuItem = new System.Windows.Forms.MenuItem(); - this.aboutMenuItem = new System.Windows.Forms.MenuItem(); - this.optionsMenuItem = new System.Windows.Forms.MenuItem(); - this.helpMenuItem = new System.Windows.Forms.MenuItem(); - this.exitMenuItem = new System.Windows.Forms.MenuItem(); - this.terminateMenuItem = new System.Windows.Forms.MenuItem(); - this.suspendMenuItem = new System.Windows.Forms.MenuItem(); - this.resumeMenuItem = new System.Windows.Forms.MenuItem(); - this.closeActiveWindowMenuItem = new System.Windows.Forms.MenuItem(); - this.goToParentProcessMenuItem = new System.Windows.Forms.MenuItem(); - this.inspectProcessMenuItem = new System.Windows.Forms.MenuItem(); - this.privilegesMenuItem = new System.Windows.Forms.MenuItem(); - this.groupsMenuItem = new System.Windows.Forms.MenuItem(); - this.servicesProcessMenuItem = new System.Windows.Forms.MenuItem(); - this.priorityMenuItem = new System.Windows.Forms.MenuItem(); - this.realTimeMenuItem = new System.Windows.Forms.MenuItem(); - this.highMenuItem = new System.Windows.Forms.MenuItem(); - this.aboveNormalMenuItem = new System.Windows.Forms.MenuItem(); - this.normalMenuItem = new System.Windows.Forms.MenuItem(); - this.belowNormalMenuItem = new System.Windows.Forms.MenuItem(); - this.idleMenuItem = new System.Windows.Forms.MenuItem(); - this.copyProcessMenuItem = new System.Windows.Forms.MenuItem(); - this.inspectThreadMenuItem = new System.Windows.Forms.MenuItem(); - this.terminateThreadMenuItem = new System.Windows.Forms.MenuItem(); - this.suspendThreadMenuItem = new System.Windows.Forms.MenuItem(); - this.resumeThreadMenuItem = new System.Windows.Forms.MenuItem(); - this.priorityThreadMenuItem = new System.Windows.Forms.MenuItem(); - this.timeCriticalThreadMenuItem = new System.Windows.Forms.MenuItem(); - this.highestThreadMenuItem = new System.Windows.Forms.MenuItem(); - this.aboveNormalThreadMenuItem = new System.Windows.Forms.MenuItem(); - this.normalThreadMenuItem = new System.Windows.Forms.MenuItem(); - this.belowNormalThreadMenuItem = new System.Windows.Forms.MenuItem(); - this.lowestThreadMenuItem = new System.Windows.Forms.MenuItem(); - this.idleThreadMenuItem = new System.Windows.Forms.MenuItem(); - this.copyThreadMenuItem = new System.Windows.Forms.MenuItem(); - this.goToInMemoryViewModuleMenuItem = new System.Windows.Forms.MenuItem(); - this.changeMemoryProtectionModuleMenuItem = new System.Windows.Forms.MenuItem(); - this.readMemoryModuleMenuItem = new System.Windows.Forms.MenuItem(); - this.inspectModuleMenuItem = new System.Windows.Forms.MenuItem(); - this.copyModuleMenuItem = new System.Windows.Forms.MenuItem(); - this.openContainingFolderMenuItem = new System.Windows.Forms.MenuItem(); - this.propertiesMenuItem = new System.Windows.Forms.MenuItem(); - this.changeMemoryProtectionMemoryMenuItem = new System.Windows.Forms.MenuItem(); - this.readWriteMemoryMemoryMenuItem = new System.Windows.Forms.MenuItem(); - this.readWriteAddressMemoryMenuItem = new System.Windows.Forms.MenuItem(); - this.copyMemoryMenuItem = new System.Windows.Forms.MenuItem(); - this.propertiesServiceMenuItem = new System.Windows.Forms.MenuItem(); - this.startServiceMenuItem = new System.Windows.Forms.MenuItem(); - this.stopServiceMenuItem = new System.Windows.Forms.MenuItem(); - this.pauseServiceMenuItem = new System.Windows.Forms.MenuItem(); - this.deleteServiceMenuItem = new System.Windows.Forms.MenuItem(); - this.goToProcessServiceMenuItem = new System.Windows.Forms.MenuItem(); - this.copyServiceMenuItem = new System.Windows.Forms.MenuItem(); - this.injectorMenuItem = new System.Windows.Forms.MenuItem(); - this.startProcessProcessMenuItem = new System.Windows.Forms.MenuItem(); - this.getCommandLineProcessMenuItem = new System.Windows.Forms.MenuItem(); + this.getSNFAMenuItem = new System.Windows.Forms.MenuItem(); this.panelProc.SuspendLayout(); this.panelVirtualProtect.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.statusGeneral)).BeginInit(); @@ -354,630 +355,6 @@ this.selectAllMenuItem}); this.menuProcess.Popup += new System.EventHandler(this.menuProcess_Popup); // - // menuItem5 - // - this.menuItem5.Index = 4; - this.menuItem5.Text = "-"; - // - // menuItem7 - // - this.menuItem7.Index = 12; - this.menuItem7.Text = "-"; - // - // searchProcessMenuItem - // - this.searchProcessMenuItem.Index = 13; - this.searchProcessMenuItem.Text = "&Search Online..."; - this.searchProcessMenuItem.Click += new System.EventHandler(this.searchProcessMenuItem_Click); - // - // selectAllMenuItem - // - this.selectAllMenuItem.Index = 15; - this.selectAllMenuItem.Text = "Select &All"; - this.selectAllMenuItem.Click += new System.EventHandler(this.selectAllMenuItem_Click); - // - // menuThread - // - this.menuThread.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] { - this.inspectThreadMenuItem, - this.terminateThreadMenuItem, - this.suspendThreadMenuItem, - this.resumeThreadMenuItem, - this.menuItem4, - this.priorityThreadMenuItem, - this.menuItem9, - this.copyThreadMenuItem, - this.selectAllThreadMenuItem}); - this.menuThread.Popup += new System.EventHandler(this.menuThread_Popup); - // - // menuItem4 - // - this.menuItem4.Index = 4; - this.menuItem4.Text = "-"; - // - // menuItem9 - // - this.menuItem9.Index = 6; - this.menuItem9.Text = "-"; - // - // selectAllThreadMenuItem - // - this.selectAllThreadMenuItem.Index = 8; - this.selectAllThreadMenuItem.Text = "Select &All"; - this.selectAllThreadMenuItem.Click += new System.EventHandler(this.selectAllThreadMenuItem_Click); - // - // toolStripMenuItem9 - // - this.toolStripMenuItem9.Name = "toolStripMenuItem9"; - this.toolStripMenuItem9.Size = new System.Drawing.Size(151, 22); - this.toolStripMenuItem9.Text = "Time Critical"; - // - // toolStripMenuItem10 - // - this.toolStripMenuItem10.Name = "toolStripMenuItem10"; - this.toolStripMenuItem10.Size = new System.Drawing.Size(151, 22); - this.toolStripMenuItem10.Text = "Highest"; - // - // toolStripMenuItem11 - // - this.toolStripMenuItem11.Name = "toolStripMenuItem11"; - this.toolStripMenuItem11.Size = new System.Drawing.Size(151, 22); - this.toolStripMenuItem11.Text = "Above Normal"; - // - // toolStripMenuItem12 - // - this.toolStripMenuItem12.Name = "toolStripMenuItem12"; - this.toolStripMenuItem12.Size = new System.Drawing.Size(151, 22); - this.toolStripMenuItem12.Text = "Normal"; - // - // toolStripMenuItem13 - // - this.toolStripMenuItem13.Name = "toolStripMenuItem13"; - this.toolStripMenuItem13.Size = new System.Drawing.Size(151, 22); - this.toolStripMenuItem13.Text = "Below Normal"; - // - // toolStripMenuItem14 - // - this.toolStripMenuItem14.Name = "toolStripMenuItem14"; - this.toolStripMenuItem14.Size = new System.Drawing.Size(151, 22); - this.toolStripMenuItem14.Text = "Lowest"; - // - // toolStripMenuItem15 - // - this.toolStripMenuItem15.Name = "toolStripMenuItem15"; - this.toolStripMenuItem15.Size = new System.Drawing.Size(151, 22); - this.toolStripMenuItem15.Text = "Idle"; - // - // menuModule - // - this.menuModule.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] { - this.goToInMemoryViewModuleMenuItem, - this.getFuncAddressMenuItem, - this.changeMemoryProtectionModuleMenuItem, - this.readMemoryModuleMenuItem, - this.inspectModuleMenuItem, - this.menuItem3, - this.searchModuleMenuItem, - this.copyFileNameMenuItem, - this.copyModuleMenuItem, - this.openContainingFolderMenuItem, - this.propertiesMenuItem, - this.menuItem6, - this.selectAllModuleMenuItem}); - this.menuModule.Popup += new System.EventHandler(this.menuModule_Popup); - // - // getFuncAddressMenuItem - // - this.getFuncAddressMenuItem.Index = 1; - this.getFuncAddressMenuItem.Text = "Get &Function Address..."; - this.getFuncAddressMenuItem.Click += new System.EventHandler(this.getFuncAddressMenuItem_Click); - // - // menuItem3 - // - this.menuItem3.Index = 5; - this.menuItem3.Text = "-"; - // - // searchModuleMenuItem - // - this.searchModuleMenuItem.Index = 6; - this.searchModuleMenuItem.Text = "&Search Online..."; - this.searchModuleMenuItem.Click += new System.EventHandler(this.searchModuleMenuItem_Click); - // - // copyFileNameMenuItem - // - this.copyFileNameMenuItem.Index = 7; - this.copyFileNameMenuItem.Text = "&Copy File Name(s)"; - this.copyFileNameMenuItem.Click += new System.EventHandler(this.copyFileNameMenuItem_Click); - // - // menuItem6 - // - this.menuItem6.Index = 11; - this.menuItem6.Text = "-"; - // - // selectAllModuleMenuItem - // - this.selectAllModuleMenuItem.Index = 12; - this.selectAllModuleMenuItem.Text = "Select &All"; - this.selectAllModuleMenuItem.Click += new System.EventHandler(this.selectAllModuleMenuItem_Click); - // - // menuMemory - // - this.menuMemory.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] { - this.changeMemoryProtectionMemoryMenuItem, - this.readWriteMemoryMemoryMenuItem, - this.readWriteAddressMemoryMenuItem, - this.menuItem2, - this.copyMemoryMenuItem, - this.selectAllMemoryMenuItem}); - this.menuMemory.Popup += new System.EventHandler(this.menuMemory_Popup); - // - // menuItem2 - // - this.menuItem2.Index = 3; - this.menuItem2.Text = "-"; - // - // selectAllMemoryMenuItem - // - this.selectAllMemoryMenuItem.Index = 5; - this.selectAllMemoryMenuItem.Text = "Select &All"; - this.selectAllMemoryMenuItem.Click += new System.EventHandler(this.selectAllMemoryMenuItem_Click); - // - // menuSearch - // - this.menuSearch.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] { - this.newResultsWindowMenuItem, - this.literalSearchMenuItem, - this.regexSearchMenuItem, - this.stringScanMenuItem, - this.heapScanMenuItem}); - // - // literalSearchMenuItem - // - this.literalSearchMenuItem.Index = 1; - this.literalSearchMenuItem.Text = "&Literal Search..."; - // - // regexSearchMenuItem - // - this.regexSearchMenuItem.Index = 2; - this.regexSearchMenuItem.Text = "&Regex Search..."; - // - // stringScanMenuItem - // - this.stringScanMenuItem.Index = 3; - this.stringScanMenuItem.Text = "&String Scan..."; - // - // heapScanMenuItem - // - this.heapScanMenuItem.Index = 4; - this.heapScanMenuItem.Text = "&Heap Scan..."; - // - // mainMenu - // - this.mainMenu.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] { - this.hackerMenuItem, - this.windowMenuItem}); - // - // hackerMenuItem - // - this.hackerMenuItem.Index = 0; - this.hackerMenuItem.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] { - this.selectAllHackerMenuItem, - this.menuItem1, - this.inspectPEFileMenuItem, - this.logMenuItem, - this.aboutMenuItem, - this.optionsMenuItem, - this.helpMenuItem, - this.exitMenuItem}); - this.hackerMenuItem.Text = "&Hacker"; - // - // selectAllHackerMenuItem - // - this.selectAllHackerMenuItem.Index = 0; - this.selectAllHackerMenuItem.Shortcut = System.Windows.Forms.Shortcut.CtrlA; - this.selectAllHackerMenuItem.Text = "&Select All"; - this.selectAllHackerMenuItem.Click += new System.EventHandler(this.selectAllHackerMenuItem_Click); - // - // menuItem1 - // - this.menuItem1.Index = 1; - this.menuItem1.Text = "-"; - // - // windowMenuItem - // - this.windowMenuItem.Index = 1; - this.windowMenuItem.Text = "&Window"; - // - // statusBar - // - this.statusBar.Location = new System.Drawing.Point(0, 408); - this.statusBar.Name = "statusBar"; - this.statusBar.Panels.AddRange(new System.Windows.Forms.StatusBarPanel[] { - this.statusGeneral, - this.statusIcon, - this.statusText}); - this.statusBar.ShowPanels = true; - this.statusBar.Size = new System.Drawing.Size(804, 22); - this.statusBar.TabIndex = 5; - // - // statusGeneral - // - this.statusGeneral.AutoSize = System.Windows.Forms.StatusBarPanelAutoSize.Contents; - this.statusGeneral.Name = "statusGeneral"; - this.statusGeneral.Width = 10; - // - // statusIcon - // - this.statusIcon.AutoSize = System.Windows.Forms.StatusBarPanelAutoSize.Contents; - this.statusIcon.BorderStyle = System.Windows.Forms.StatusBarPanelBorderStyle.None; - this.statusIcon.MinWidth = 0; - this.statusIcon.Name = "statusIcon"; - this.statusIcon.Width = 10; - // - // statusText - // - this.statusText.AutoSize = System.Windows.Forms.StatusBarPanelAutoSize.Contents; - this.statusText.BorderStyle = System.Windows.Forms.StatusBarPanelBorderStyle.None; - this.statusText.Name = "statusText"; - this.statusText.Width = 10; - // - // timerMessages - // - this.timerMessages.Interval = 2000; - this.timerMessages.Tick += new System.EventHandler(this.timerMessages_Tick); - // - // tabControlBig - // - this.tabControlBig.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) - | System.Windows.Forms.AnchorStyles.Left) - | System.Windows.Forms.AnchorStyles.Right))); - this.tabControlBig.Controls.Add(this.tabProcesses); - this.tabControlBig.Controls.Add(this.tabServices); - this.tabControlBig.Location = new System.Drawing.Point(0, 0); - this.tabControlBig.Name = "tabControlBig"; - this.tabControlBig.SelectedIndex = 0; - this.tabControlBig.Size = new System.Drawing.Size(804, 409); - this.tabControlBig.TabIndex = 6; - // - // tabProcesses - // - this.tabProcesses.Controls.Add(this.splitMain); - this.tabProcesses.Location = new System.Drawing.Point(4, 22); - this.tabProcesses.Name = "tabProcesses"; - this.tabProcesses.Padding = new System.Windows.Forms.Padding(3); - this.tabProcesses.Size = new System.Drawing.Size(796, 383); - this.tabProcesses.TabIndex = 0; - this.tabProcesses.Text = "Processes"; - this.tabProcesses.UseVisualStyleBackColor = true; - // - // splitMain - // - this.splitMain.Dock = System.Windows.Forms.DockStyle.Fill; - this.splitMain.Location = new System.Drawing.Point(3, 3); - this.splitMain.Name = "splitMain"; - // - // splitMain.Panel1 - // - this.splitMain.Panel1.Controls.Add(this.listProcesses); - this.splitMain.Panel1.Padding = new System.Windows.Forms.Padding(0, 0, 0, 1); - // - // splitMain.Panel2 - // - this.splitMain.Panel2.Controls.Add(this.tabControl); - this.splitMain.Size = new System.Drawing.Size(790, 377); - this.splitMain.SplitterDistance = 348; - this.splitMain.TabIndex = 3; - // - // listProcesses - // - this.listProcesses.Dock = System.Windows.Forms.DockStyle.Fill; - this.listProcesses.DoubleBuffered = true; - this.listProcesses.Location = new System.Drawing.Point(0, 0); - this.listProcesses.Name = "listProcesses"; - this.listProcesses.Provider = null; - this.listProcesses.Size = new System.Drawing.Size(348, 376); - this.listProcesses.TabIndex = 4; - this.listProcesses.SelectedIndexChanged += new System.EventHandler(this.listProcesses_SelectedIndexChanged); - this.listProcesses.KeyDown += new System.Windows.Forms.KeyEventHandler(this.listProcesses_KeyDown); - // - // tabControl - // - this.tabControl.Controls.Add(this.tabProcess); - this.tabControl.Controls.Add(this.tabThreads); - this.tabControl.Controls.Add(this.tabModules); - this.tabControl.Controls.Add(this.tabMemory); - this.tabControl.Dock = System.Windows.Forms.DockStyle.Fill; - this.tabControl.Location = new System.Drawing.Point(0, 0); - this.tabControl.Name = "tabControl"; - this.tabControl.SelectedIndex = 0; - this.tabControl.Size = new System.Drawing.Size(438, 377); - this.tabControl.TabIndex = 5; - // - // tabProcess - // - this.tabProcess.Controls.Add(this.groupSearch); - this.tabProcess.Controls.Add(this.treeMisc); - this.tabProcess.Location = new System.Drawing.Point(4, 22); - this.tabProcess.Name = "tabProcess"; - this.tabProcess.Padding = new System.Windows.Forms.Padding(3); - this.tabProcess.Size = new System.Drawing.Size(430, 351); - this.tabProcess.TabIndex = 4; - this.tabProcess.Text = "Process"; - this.tabProcess.UseVisualStyleBackColor = true; - // - // groupSearch - // - this.groupSearch.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) - | System.Windows.Forms.AnchorStyles.Right))); - this.groupSearch.Controls.Add(this.buttonSearch); - this.groupSearch.Location = new System.Drawing.Point(6, 6); - this.groupSearch.Name = "groupSearch"; - this.groupSearch.Size = new System.Drawing.Size(418, 47); - this.groupSearch.TabIndex = 4; - this.groupSearch.TabStop = false; - this.groupSearch.Text = "Search"; - // - // buttonSearch - // - this.buttonSearch.AutoSize = true; - this.buttonSearch.Location = new System.Drawing.Point(6, 19); - this.buttonSearch.Name = "buttonSearch"; - this.buttonSearch.Size = new System.Drawing.Size(102, 23); - this.buttonSearch.SplitMenu = this.menuSearch; - this.buttonSearch.TabIndex = 3; - this.buttonSearch.Text = "Search button"; - this.buttonSearch.UseVisualStyleBackColor = true; - this.buttonSearch.Click += new System.EventHandler(this.buttonSearch_Click); - // - // treeMisc - // - this.treeMisc.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) - | System.Windows.Forms.AnchorStyles.Left) - | System.Windows.Forms.AnchorStyles.Right))); - this.treeMisc.FullRowSelect = true; - this.treeMisc.HideSelection = false; - this.treeMisc.Location = new System.Drawing.Point(6, 59); - this.treeMisc.Name = "treeMisc"; - this.treeMisc.ShowNodeToolTips = true; - this.treeMisc.Size = new System.Drawing.Size(418, 286); - this.treeMisc.TabIndex = 1; - // - // tabThreads - // - this.tabThreads.Controls.Add(this.listThreads); - this.tabThreads.Location = new System.Drawing.Point(4, 22); - this.tabThreads.Name = "tabThreads"; - this.tabThreads.Padding = new System.Windows.Forms.Padding(3); - this.tabThreads.Size = new System.Drawing.Size(430, 372); - this.tabThreads.TabIndex = 6; - this.tabThreads.Text = "Threads"; - this.tabThreads.UseVisualStyleBackColor = true; - // - // listThreads - // - this.listThreads.Dock = System.Windows.Forms.DockStyle.Fill; - this.listThreads.DoubleBuffered = true; - this.listThreads.Location = new System.Drawing.Point(3, 3); - this.listThreads.Name = "listThreads"; - this.listThreads.Provider = null; - this.listThreads.Size = new System.Drawing.Size(424, 366); - this.listThreads.TabIndex = 0; - this.listThreads.DoubleClick += new System.EventHandler(this.listThreads_DoubleClick); - // - // tabModules - // - this.tabModules.Controls.Add(this.listModules); - this.tabModules.Location = new System.Drawing.Point(4, 22); - this.tabModules.Name = "tabModules"; - this.tabModules.Padding = new System.Windows.Forms.Padding(3); - this.tabModules.Size = new System.Drawing.Size(430, 372); - this.tabModules.TabIndex = 0; - this.tabModules.Text = "Modules"; - this.tabModules.UseVisualStyleBackColor = true; - // - // listModules - // - this.listModules.AllowColumnReorder = true; - this.listModules.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] { - this.columnModuleName, - this.columnBaseAddress, - this.columnModuleSize, - this.columnDescription}); - this.listModules.Dock = System.Windows.Forms.DockStyle.Fill; - this.listModules.FullRowSelect = true; - this.listModules.HideSelection = false; - this.listModules.Location = new System.Drawing.Point(3, 3); - this.listModules.Name = "listModules"; - this.listModules.ShowItemToolTips = true; - this.listModules.Size = new System.Drawing.Size(424, 366); - this.listModules.TabIndex = 1; - this.listModules.UseCompatibleStateImageBehavior = false; - this.listModules.View = System.Windows.Forms.View.Details; - this.listModules.DoubleClick += new System.EventHandler(this.listModules_DoubleClick); - // - // columnModuleName - // - this.columnModuleName.Text = "Name"; - this.columnModuleName.Width = 110; - // - // columnBaseAddress - // - this.columnBaseAddress.Text = "Base Address"; - this.columnBaseAddress.Width = 90; - // - // columnModuleSize - // - this.columnModuleSize.Text = "Size"; - this.columnModuleSize.Width = 70; - // - // columnDescription - // - this.columnDescription.Text = "Description"; - this.columnDescription.Width = 140; - // - // tabMemory - // - this.tabMemory.Controls.Add(this.listMemory); - this.tabMemory.Location = new System.Drawing.Point(4, 22); - this.tabMemory.Name = "tabMemory"; - this.tabMemory.Padding = new System.Windows.Forms.Padding(3); - this.tabMemory.Size = new System.Drawing.Size(430, 372); - this.tabMemory.TabIndex = 1; - this.tabMemory.Text = "Memory"; - this.tabMemory.UseVisualStyleBackColor = true; - // - // listMemory - // - this.listMemory.AllowColumnReorder = true; - this.listMemory.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] { - this.columnHeader1, - this.columnHeader2, - this.columnHeader3, - this.columnHeader4, - this.columnHeader5}); - this.listMemory.Dock = System.Windows.Forms.DockStyle.Fill; - this.listMemory.FullRowSelect = true; - this.listMemory.HideSelection = false; - this.listMemory.Location = new System.Drawing.Point(3, 3); - this.listMemory.Name = "listMemory"; - this.listMemory.ShowItemToolTips = true; - this.listMemory.Size = new System.Drawing.Size(424, 366); - this.listMemory.TabIndex = 2; - this.listMemory.UseCompatibleStateImageBehavior = false; - this.listMemory.View = System.Windows.Forms.View.Details; - this.listMemory.DoubleClick += new System.EventHandler(this.listMemory_DoubleClick); - // - // columnHeader1 - // - this.columnHeader1.Text = "Address"; - this.columnHeader1.Width = 80; - // - // columnHeader2 - // - this.columnHeader2.Text = "Size"; - this.columnHeader2.Width = 80; - // - // columnHeader3 - // - this.columnHeader3.Text = "State"; - this.columnHeader3.Width = 70; - // - // columnHeader4 - // - this.columnHeader4.Text = "Type"; - this.columnHeader4.Width = 70; - // - // columnHeader5 - // - this.columnHeader5.Text = "Protection"; - this.columnHeader5.Width = 80; - // - // tabServices - // - this.tabServices.Controls.Add(this.listServices); - this.tabServices.Location = new System.Drawing.Point(4, 22); - this.tabServices.Name = "tabServices"; - this.tabServices.Padding = new System.Windows.Forms.Padding(3); - this.tabServices.Size = new System.Drawing.Size(796, 404); - this.tabServices.TabIndex = 1; - this.tabServices.Text = "Services"; - this.tabServices.UseVisualStyleBackColor = true; - // - // listServices - // - this.listServices.Dock = System.Windows.Forms.DockStyle.Fill; - this.listServices.DoubleBuffered = true; - this.listServices.Location = new System.Drawing.Point(3, 3); - this.listServices.Name = "listServices"; - this.listServices.Provider = null; - this.listServices.Size = new System.Drawing.Size(790, 398); - this.listServices.TabIndex = 0; - this.listServices.DoubleClick += new System.EventHandler(this.listServices_DoubleClick); - // - // menuService - // - this.menuService.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] { - this.goToProcessServiceMenuItem, - this.startServiceMenuItem, - this.continueServiceMenuItem, - this.pauseServiceMenuItem, - this.stopServiceMenuItem, - this.deleteServiceMenuItem, - this.propertiesServiceMenuItem, - this.menuItem8, - this.copyServiceMenuItem, - this.selectAllServiceMenuItem}); - this.menuService.Popup += new System.EventHandler(this.menuService_Popup); - // - // continueServiceMenuItem - // - this.continueServiceMenuItem.Index = 2; - this.continueServiceMenuItem.Text = "&Continue"; - this.continueServiceMenuItem.Click += new System.EventHandler(this.continueServiceMenuItem_Click); - // - // menuItem8 - // - this.menuItem8.Index = 7; - this.menuItem8.Text = "-"; - // - // selectAllServiceMenuItem - // - this.selectAllServiceMenuItem.Index = 9; - this.selectAllServiceMenuItem.Text = "Select &All"; - this.selectAllServiceMenuItem.Click += new System.EventHandler(this.selectAllServiceMenuItem_Click); - // - // vistaMenu - // - this.vistaMenu.ContainerControl = this; - // - // newResultsWindowMenuItem - // - this.vistaMenu.SetImage(this.newResultsWindowMenuItem, global::ProcessHacker.Properties.Resources.table); - this.newResultsWindowMenuItem.Index = 0; - this.newResultsWindowMenuItem.Text = "&New Results Window..."; - // - // inspectPEFileMenuItem - // - this.vistaMenu.SetImage(this.inspectPEFileMenuItem, global::ProcessHacker.Properties.Resources.application_form_magnify); - this.inspectPEFileMenuItem.Index = 2; - this.inspectPEFileMenuItem.Text = "Inspect &PE File..."; - this.inspectPEFileMenuItem.Click += new System.EventHandler(this.inspectPEFileMenuItem_Click); - // - // logMenuItem - // - this.vistaMenu.SetImage(this.logMenuItem, global::ProcessHacker.Properties.Resources.page_white_text); - this.logMenuItem.Index = 3; - this.logMenuItem.Text = "&Log..."; - this.logMenuItem.Click += new System.EventHandler(this.logMenuItem_Click); - // - // aboutMenuItem - // - this.vistaMenu.SetImage(this.aboutMenuItem, global::ProcessHacker.Properties.Resources.information); - this.aboutMenuItem.Index = 4; - this.aboutMenuItem.Text = "&About..."; - this.aboutMenuItem.Click += new System.EventHandler(this.aboutMenuItem_Click); - // - // optionsMenuItem - // - this.vistaMenu.SetImage(this.optionsMenuItem, global::ProcessHacker.Properties.Resources.page_gear); - this.optionsMenuItem.Index = 5; - this.optionsMenuItem.Text = "&Options..."; - this.optionsMenuItem.Click += new System.EventHandler(this.optionsMenuItem_Click); - // - // helpMenuItem - // - this.vistaMenu.SetImage(this.helpMenuItem, global::ProcessHacker.Properties.Resources.help); - this.helpMenuItem.Index = 6; - this.helpMenuItem.Text = "&Help..."; - this.helpMenuItem.Click += new System.EventHandler(this.helpMenuItem_Click); - // - // exitMenuItem - // - this.vistaMenu.SetImage(this.exitMenuItem, global::ProcessHacker.Properties.Resources.door_out); - this.exitMenuItem.Index = 7; - this.exitMenuItem.Text = "E&xit"; - this.exitMenuItem.Click += new System.EventHandler(this.exitMenuItem_Click); - // // terminateMenuItem // this.vistaMenu.SetImage(this.terminateMenuItem, global::ProcessHacker.Properties.Resources.cross); @@ -1008,6 +385,11 @@ this.closeActiveWindowMenuItem.Visible = false; this.closeActiveWindowMenuItem.Click += new System.EventHandler(this.closeActiveWindowMenuItem_Click); // + // menuItem5 + // + this.menuItem5.Index = 4; + this.menuItem5.Text = "-"; + // // goToParentProcessMenuItem // this.vistaMenu.SetImage(this.goToParentProcessMenuItem, global::ProcessHacker.Properties.Resources.arrow_right); @@ -1098,12 +480,64 @@ this.idleMenuItem.Text = "Idle"; this.idleMenuItem.Click += new System.EventHandler(this.idleMenuItem_Click); // + // injectorMenuItem + // + this.vistaMenu.SetImage(this.injectorMenuItem, global::ProcessHacker.Properties.Resources.asterisk_orange); + this.injectorMenuItem.Index = 11; + this.injectorMenuItem.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] { + this.startProcessProcessMenuItem, + this.getCommandLineProcessMenuItem}); + this.injectorMenuItem.Text = "Injector"; + // + // startProcessProcessMenuItem + // + this.startProcessProcessMenuItem.Index = 0; + this.startProcessProcessMenuItem.Text = "Start Process..."; + this.startProcessProcessMenuItem.Click += new System.EventHandler(this.startProcessProcessMenuItem_Click); + // + // getCommandLineProcessMenuItem + // + this.getCommandLineProcessMenuItem.Index = 1; + this.getCommandLineProcessMenuItem.Text = "Get Command Line..."; + this.getCommandLineProcessMenuItem.Click += new System.EventHandler(this.getCommandLineProcessMenuItem_Click); + // + // menuItem7 + // + this.menuItem7.Index = 12; + this.menuItem7.Text = "-"; + // + // searchProcessMenuItem + // + this.searchProcessMenuItem.Index = 13; + this.searchProcessMenuItem.Text = "&Search Online..."; + this.searchProcessMenuItem.Click += new System.EventHandler(this.searchProcessMenuItem_Click); + // // copyProcessMenuItem // this.vistaMenu.SetImage(this.copyProcessMenuItem, global::ProcessHacker.Properties.Resources.page_copy); this.copyProcessMenuItem.Index = 14; this.copyProcessMenuItem.Text = "C&opy"; // + // selectAllMenuItem + // + this.selectAllMenuItem.Index = 15; + this.selectAllMenuItem.Text = "Select &All"; + this.selectAllMenuItem.Click += new System.EventHandler(this.selectAllMenuItem_Click); + // + // menuThread + // + this.menuThread.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] { + this.inspectThreadMenuItem, + this.terminateThreadMenuItem, + this.suspendThreadMenuItem, + this.resumeThreadMenuItem, + this.menuItem4, + this.priorityThreadMenuItem, + this.menuItem9, + this.copyThreadMenuItem, + this.selectAllThreadMenuItem}); + this.menuThread.Popup += new System.EventHandler(this.menuThread_Popup); + // // inspectThreadMenuItem // this.inspectThreadMenuItem.DefaultItem = true; @@ -1133,6 +567,11 @@ this.resumeThreadMenuItem.Text = "&Resume"; this.resumeThreadMenuItem.Click += new System.EventHandler(this.resumeThreadMenuItem_Click); // + // menuItem4 + // + this.menuItem4.Index = 4; + this.menuItem4.Text = "-"; + // // priorityThreadMenuItem // this.vistaMenu.SetImage(this.priorityThreadMenuItem, global::ProcessHacker.Properties.Resources.control_equalizer_blue); @@ -1196,12 +635,83 @@ this.idleThreadMenuItem.Text = "Idle"; this.idleThreadMenuItem.Click += new System.EventHandler(this.idleThreadMenuItem_Click); // + // menuItem9 + // + this.menuItem9.Index = 6; + this.menuItem9.Text = "-"; + // // copyThreadMenuItem // this.vistaMenu.SetImage(this.copyThreadMenuItem, global::ProcessHacker.Properties.Resources.page_copy); this.copyThreadMenuItem.Index = 7; this.copyThreadMenuItem.Text = "C&opy"; // + // selectAllThreadMenuItem + // + this.selectAllThreadMenuItem.Index = 8; + this.selectAllThreadMenuItem.Text = "Select &All"; + this.selectAllThreadMenuItem.Click += new System.EventHandler(this.selectAllThreadMenuItem_Click); + // + // toolStripMenuItem9 + // + this.toolStripMenuItem9.Name = "toolStripMenuItem9"; + this.toolStripMenuItem9.Size = new System.Drawing.Size(151, 22); + this.toolStripMenuItem9.Text = "Time Critical"; + // + // toolStripMenuItem10 + // + this.toolStripMenuItem10.Name = "toolStripMenuItem10"; + this.toolStripMenuItem10.Size = new System.Drawing.Size(151, 22); + this.toolStripMenuItem10.Text = "Highest"; + // + // toolStripMenuItem11 + // + this.toolStripMenuItem11.Name = "toolStripMenuItem11"; + this.toolStripMenuItem11.Size = new System.Drawing.Size(151, 22); + this.toolStripMenuItem11.Text = "Above Normal"; + // + // toolStripMenuItem12 + // + this.toolStripMenuItem12.Name = "toolStripMenuItem12"; + this.toolStripMenuItem12.Size = new System.Drawing.Size(151, 22); + this.toolStripMenuItem12.Text = "Normal"; + // + // toolStripMenuItem13 + // + this.toolStripMenuItem13.Name = "toolStripMenuItem13"; + this.toolStripMenuItem13.Size = new System.Drawing.Size(151, 22); + this.toolStripMenuItem13.Text = "Below Normal"; + // + // toolStripMenuItem14 + // + this.toolStripMenuItem14.Name = "toolStripMenuItem14"; + this.toolStripMenuItem14.Size = new System.Drawing.Size(151, 22); + this.toolStripMenuItem14.Text = "Lowest"; + // + // toolStripMenuItem15 + // + this.toolStripMenuItem15.Name = "toolStripMenuItem15"; + this.toolStripMenuItem15.Size = new System.Drawing.Size(151, 22); + this.toolStripMenuItem15.Text = "Idle"; + // + // menuModule + // + this.menuModule.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] { + this.goToInMemoryViewModuleMenuItem, + this.getFuncAddressMenuItem, + this.changeMemoryProtectionModuleMenuItem, + this.readMemoryModuleMenuItem, + this.inspectModuleMenuItem, + this.menuItem3, + this.searchModuleMenuItem, + this.copyFileNameMenuItem, + this.copyModuleMenuItem, + this.openContainingFolderMenuItem, + this.propertiesMenuItem, + this.menuItem6, + this.selectAllModuleMenuItem}); + this.menuModule.Popup += new System.EventHandler(this.menuModule_Popup); + // // goToInMemoryViewModuleMenuItem // this.goToInMemoryViewModuleMenuItem.DefaultItem = true; @@ -1210,6 +720,12 @@ this.goToInMemoryViewModuleMenuItem.Text = "&Go To In Memory View"; this.goToInMemoryViewModuleMenuItem.Click += new System.EventHandler(this.goToInMemoryViewModuleMenuItem_Click); // + // getFuncAddressMenuItem + // + this.getFuncAddressMenuItem.Index = 1; + this.getFuncAddressMenuItem.Text = "Get &Function Address..."; + this.getFuncAddressMenuItem.Click += new System.EventHandler(this.getFuncAddressMenuItem_Click); + // // changeMemoryProtectionModuleMenuItem // this.vistaMenu.SetImage(this.changeMemoryProtectionModuleMenuItem, global::ProcessHacker.Properties.Resources.lock_edit); @@ -1231,6 +747,23 @@ this.inspectModuleMenuItem.Text = "&Inspect..."; this.inspectModuleMenuItem.Click += new System.EventHandler(this.inspectModuleMenuItem_Click); // + // menuItem3 + // + this.menuItem3.Index = 5; + this.menuItem3.Text = "-"; + // + // searchModuleMenuItem + // + this.searchModuleMenuItem.Index = 6; + this.searchModuleMenuItem.Text = "&Search Online..."; + this.searchModuleMenuItem.Click += new System.EventHandler(this.searchModuleMenuItem_Click); + // + // copyFileNameMenuItem + // + this.copyFileNameMenuItem.Index = 7; + this.copyFileNameMenuItem.Text = "&Copy File Name(s)"; + this.copyFileNameMenuItem.Click += new System.EventHandler(this.copyFileNameMenuItem_Click); + // // copyModuleMenuItem // this.vistaMenu.SetImage(this.copyModuleMenuItem, global::ProcessHacker.Properties.Resources.page_copy); @@ -1251,6 +784,28 @@ this.propertiesMenuItem.Text = "Prope&rties..."; this.propertiesMenuItem.Click += new System.EventHandler(this.propertiesMenuItem_Click); // + // menuItem6 + // + this.menuItem6.Index = 11; + this.menuItem6.Text = "-"; + // + // selectAllModuleMenuItem + // + this.selectAllModuleMenuItem.Index = 12; + this.selectAllModuleMenuItem.Text = "Select &All"; + this.selectAllModuleMenuItem.Click += new System.EventHandler(this.selectAllModuleMenuItem_Click); + // + // menuMemory + // + this.menuMemory.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] { + this.changeMemoryProtectionMemoryMenuItem, + this.readWriteMemoryMemoryMenuItem, + this.readWriteAddressMemoryMenuItem, + this.menuItem2, + this.copyMemoryMenuItem, + this.selectAllMemoryMenuItem}); + this.menuMemory.Popup += new System.EventHandler(this.menuMemory_Popup); + // // changeMemoryProtectionMemoryMenuItem // this.vistaMenu.SetImage(this.changeMemoryProtectionMemoryMenuItem, global::ProcessHacker.Properties.Resources.lock_edit); @@ -1273,12 +828,500 @@ this.readWriteAddressMemoryMenuItem.Text = "Read/Write Address..."; this.readWriteAddressMemoryMenuItem.Click += new System.EventHandler(this.readWriteAddressMemoryMenuItem_Click); // + // menuItem2 + // + this.menuItem2.Index = 3; + this.menuItem2.Text = "-"; + // // copyMemoryMenuItem // this.vistaMenu.SetImage(this.copyMemoryMenuItem, global::ProcessHacker.Properties.Resources.page_copy); this.copyMemoryMenuItem.Index = 4; this.copyMemoryMenuItem.Text = "C&opy"; // + // selectAllMemoryMenuItem + // + this.selectAllMemoryMenuItem.Index = 5; + this.selectAllMemoryMenuItem.Text = "Select &All"; + this.selectAllMemoryMenuItem.Click += new System.EventHandler(this.selectAllMemoryMenuItem_Click); + // + // menuSearch + // + this.menuSearch.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] { + this.newResultsWindowMenuItem, + this.literalSearchMenuItem, + this.regexSearchMenuItem, + this.stringScanMenuItem, + this.heapScanMenuItem}); + // + // newResultsWindowMenuItem + // + this.vistaMenu.SetImage(this.newResultsWindowMenuItem, global::ProcessHacker.Properties.Resources.table); + this.newResultsWindowMenuItem.Index = 0; + this.newResultsWindowMenuItem.Text = "&New Results Window..."; + // + // literalSearchMenuItem + // + this.literalSearchMenuItem.Index = 1; + this.literalSearchMenuItem.Text = "&Literal Search..."; + // + // regexSearchMenuItem + // + this.regexSearchMenuItem.Index = 2; + this.regexSearchMenuItem.Text = "&Regex Search..."; + // + // stringScanMenuItem + // + this.stringScanMenuItem.Index = 3; + this.stringScanMenuItem.Text = "&String Scan..."; + // + // heapScanMenuItem + // + this.heapScanMenuItem.Index = 4; + this.heapScanMenuItem.Text = "&Heap Scan..."; + // + // mainMenu + // + this.mainMenu.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] { + this.hackerMenuItem, + this.windowMenuItem}); + // + // hackerMenuItem + // + this.hackerMenuItem.Index = 0; + this.hackerMenuItem.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] { + this.selectAllHackerMenuItem, + this.menuItem1, + this.getSNFAMenuItem, + this.inspectPEFileMenuItem, + this.logMenuItem, + this.aboutMenuItem, + this.optionsMenuItem, + this.helpMenuItem, + this.exitMenuItem}); + this.hackerMenuItem.Text = "&Hacker"; + // + // selectAllHackerMenuItem + // + this.selectAllHackerMenuItem.Index = 0; + this.selectAllHackerMenuItem.Shortcut = System.Windows.Forms.Shortcut.CtrlA; + this.selectAllHackerMenuItem.Text = "&Select All"; + this.selectAllHackerMenuItem.Click += new System.EventHandler(this.selectAllHackerMenuItem_Click); + // + // menuItem1 + // + this.menuItem1.Index = 1; + this.menuItem1.Text = "-"; + // + // inspectPEFileMenuItem + // + this.vistaMenu.SetImage(this.inspectPEFileMenuItem, global::ProcessHacker.Properties.Resources.application_form_magnify); + this.inspectPEFileMenuItem.Index = 3; + this.inspectPEFileMenuItem.Text = "Inspect &PE File..."; + this.inspectPEFileMenuItem.Click += new System.EventHandler(this.inspectPEFileMenuItem_Click); + // + // logMenuItem + // + this.vistaMenu.SetImage(this.logMenuItem, global::ProcessHacker.Properties.Resources.page_white_text); + this.logMenuItem.Index = 4; + this.logMenuItem.Text = "&Log..."; + this.logMenuItem.Click += new System.EventHandler(this.logMenuItem_Click); + // + // aboutMenuItem + // + this.vistaMenu.SetImage(this.aboutMenuItem, global::ProcessHacker.Properties.Resources.information); + this.aboutMenuItem.Index = 5; + this.aboutMenuItem.Text = "&About..."; + this.aboutMenuItem.Click += new System.EventHandler(this.aboutMenuItem_Click); + // + // optionsMenuItem + // + this.vistaMenu.SetImage(this.optionsMenuItem, global::ProcessHacker.Properties.Resources.page_gear); + this.optionsMenuItem.Index = 6; + this.optionsMenuItem.Text = "&Options..."; + this.optionsMenuItem.Click += new System.EventHandler(this.optionsMenuItem_Click); + // + // helpMenuItem + // + this.vistaMenu.SetImage(this.helpMenuItem, global::ProcessHacker.Properties.Resources.help); + this.helpMenuItem.Index = 7; + this.helpMenuItem.Text = "&Help..."; + this.helpMenuItem.Click += new System.EventHandler(this.helpMenuItem_Click); + // + // exitMenuItem + // + this.vistaMenu.SetImage(this.exitMenuItem, global::ProcessHacker.Properties.Resources.door_out); + this.exitMenuItem.Index = 8; + this.exitMenuItem.Text = "E&xit"; + this.exitMenuItem.Click += new System.EventHandler(this.exitMenuItem_Click); + // + // windowMenuItem + // + this.windowMenuItem.Index = 1; + this.windowMenuItem.Text = "&Window"; + // + // statusBar + // + this.statusBar.Location = new System.Drawing.Point(0, 440); + this.statusBar.Name = "statusBar"; + this.statusBar.Panels.AddRange(new System.Windows.Forms.StatusBarPanel[] { + this.statusGeneral, + this.statusIcon, + this.statusText}); + this.statusBar.ShowPanels = true; + this.statusBar.Size = new System.Drawing.Size(804, 22); + this.statusBar.TabIndex = 5; + // + // statusGeneral + // + this.statusGeneral.AutoSize = System.Windows.Forms.StatusBarPanelAutoSize.Contents; + this.statusGeneral.Name = "statusGeneral"; + this.statusGeneral.Width = 10; + // + // statusIcon + // + this.statusIcon.AutoSize = System.Windows.Forms.StatusBarPanelAutoSize.Contents; + this.statusIcon.BorderStyle = System.Windows.Forms.StatusBarPanelBorderStyle.None; + this.statusIcon.MinWidth = 0; + this.statusIcon.Name = "statusIcon"; + this.statusIcon.Width = 10; + // + // statusText + // + this.statusText.AutoSize = System.Windows.Forms.StatusBarPanelAutoSize.Contents; + this.statusText.BorderStyle = System.Windows.Forms.StatusBarPanelBorderStyle.None; + this.statusText.Name = "statusText"; + this.statusText.Width = 10; + // + // timerMessages + // + this.timerMessages.Interval = 2000; + this.timerMessages.Tick += new System.EventHandler(this.timerMessages_Tick); + // + // tabControlBig + // + this.tabControlBig.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) + | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.tabControlBig.Controls.Add(this.tabProcesses); + this.tabControlBig.Controls.Add(this.tabServices); + this.tabControlBig.Location = new System.Drawing.Point(0, 0); + this.tabControlBig.Name = "tabControlBig"; + this.tabControlBig.SelectedIndex = 0; + this.tabControlBig.Size = new System.Drawing.Size(804, 441); + this.tabControlBig.TabIndex = 6; + // + // tabProcesses + // + this.tabProcesses.Controls.Add(this.splitMain); + this.tabProcesses.Location = new System.Drawing.Point(4, 22); + this.tabProcesses.Name = "tabProcesses"; + this.tabProcesses.Padding = new System.Windows.Forms.Padding(3); + this.tabProcesses.Size = new System.Drawing.Size(796, 415); + this.tabProcesses.TabIndex = 0; + this.tabProcesses.Text = "Processes"; + this.tabProcesses.UseVisualStyleBackColor = true; + // + // splitMain + // + this.splitMain.Dock = System.Windows.Forms.DockStyle.Fill; + this.splitMain.Location = new System.Drawing.Point(3, 3); + this.splitMain.Name = "splitMain"; + // + // splitMain.Panel1 + // + this.splitMain.Panel1.Controls.Add(this.listProcesses); + this.splitMain.Panel1.Padding = new System.Windows.Forms.Padding(0, 0, 0, 1); + // + // splitMain.Panel2 + // + this.splitMain.Panel2.Controls.Add(this.tabControl); + this.splitMain.Size = new System.Drawing.Size(790, 409); + this.splitMain.SplitterDistance = 348; + this.splitMain.TabIndex = 3; + // + // listProcesses + // + this.listProcesses.Dock = System.Windows.Forms.DockStyle.Fill; + this.listProcesses.DoubleBuffered = true; + this.listProcesses.Location = new System.Drawing.Point(0, 0); + this.listProcesses.Name = "listProcesses"; + this.listProcesses.Provider = null; + this.listProcesses.Size = new System.Drawing.Size(348, 408); + this.listProcesses.TabIndex = 4; + this.listProcesses.SelectedIndexChanged += new System.EventHandler(this.listProcesses_SelectedIndexChanged); + this.listProcesses.KeyDown += new System.Windows.Forms.KeyEventHandler(this.listProcesses_KeyDown); + // + // tabControl + // + this.tabControl.Controls.Add(this.tabProcess); + this.tabControl.Controls.Add(this.tabThreads); + this.tabControl.Controls.Add(this.tabModules); + this.tabControl.Controls.Add(this.tabMemory); + this.tabControl.Dock = System.Windows.Forms.DockStyle.Fill; + this.tabControl.Location = new System.Drawing.Point(0, 0); + this.tabControl.Name = "tabControl"; + this.tabControl.SelectedIndex = 0; + this.tabControl.Size = new System.Drawing.Size(438, 409); + this.tabControl.TabIndex = 5; + // + // tabProcess + // + this.tabProcess.Controls.Add(this.groupSearch); + this.tabProcess.Controls.Add(this.treeMisc); + this.tabProcess.Location = new System.Drawing.Point(4, 22); + this.tabProcess.Name = "tabProcess"; + this.tabProcess.Padding = new System.Windows.Forms.Padding(3); + this.tabProcess.Size = new System.Drawing.Size(430, 383); + this.tabProcess.TabIndex = 4; + this.tabProcess.Text = "Process"; + this.tabProcess.UseVisualStyleBackColor = true; + // + // groupSearch + // + this.groupSearch.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupSearch.Controls.Add(this.buttonSearch); + this.groupSearch.Location = new System.Drawing.Point(6, 6); + this.groupSearch.Name = "groupSearch"; + this.groupSearch.Size = new System.Drawing.Size(418, 47); + this.groupSearch.TabIndex = 4; + this.groupSearch.TabStop = false; + this.groupSearch.Text = "Search"; + // + // buttonSearch + // + this.buttonSearch.AutoSize = true; + this.buttonSearch.Location = new System.Drawing.Point(6, 19); + this.buttonSearch.Name = "buttonSearch"; + this.buttonSearch.Size = new System.Drawing.Size(102, 23); + this.buttonSearch.SplitMenu = this.menuSearch; + this.buttonSearch.TabIndex = 3; + this.buttonSearch.Text = "Search button"; + this.buttonSearch.UseVisualStyleBackColor = true; + this.buttonSearch.Click += new System.EventHandler(this.buttonSearch_Click); + // + // treeMisc + // + this.treeMisc.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) + | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.treeMisc.FullRowSelect = true; + this.treeMisc.HideSelection = false; + this.treeMisc.Location = new System.Drawing.Point(6, 59); + this.treeMisc.Name = "treeMisc"; + this.treeMisc.ShowNodeToolTips = true; + this.treeMisc.Size = new System.Drawing.Size(418, 318); + this.treeMisc.TabIndex = 1; + // + // tabThreads + // + this.tabThreads.Controls.Add(this.listThreads); + this.tabThreads.Location = new System.Drawing.Point(4, 22); + this.tabThreads.Name = "tabThreads"; + this.tabThreads.Padding = new System.Windows.Forms.Padding(3); + this.tabThreads.Size = new System.Drawing.Size(430, 351); + this.tabThreads.TabIndex = 6; + this.tabThreads.Text = "Threads"; + this.tabThreads.UseVisualStyleBackColor = true; + // + // listThreads + // + this.listThreads.Dock = System.Windows.Forms.DockStyle.Fill; + this.listThreads.DoubleBuffered = true; + this.listThreads.Location = new System.Drawing.Point(3, 3); + this.listThreads.Name = "listThreads"; + this.listThreads.Provider = null; + this.listThreads.Size = new System.Drawing.Size(424, 345); + this.listThreads.TabIndex = 0; + this.listThreads.DoubleClick += new System.EventHandler(this.listThreads_DoubleClick); + // + // tabModules + // + this.tabModules.Controls.Add(this.listModules); + this.tabModules.Location = new System.Drawing.Point(4, 22); + this.tabModules.Name = "tabModules"; + this.tabModules.Padding = new System.Windows.Forms.Padding(3); + this.tabModules.Size = new System.Drawing.Size(430, 351); + this.tabModules.TabIndex = 0; + this.tabModules.Text = "Modules"; + this.tabModules.UseVisualStyleBackColor = true; + // + // listModules + // + this.listModules.AllowColumnReorder = true; + this.listModules.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] { + this.columnModuleName, + this.columnBaseAddress, + this.columnModuleSize, + this.columnDescription}); + this.listModules.Dock = System.Windows.Forms.DockStyle.Fill; + this.listModules.FullRowSelect = true; + this.listModules.HideSelection = false; + this.listModules.Location = new System.Drawing.Point(3, 3); + this.listModules.Name = "listModules"; + this.listModules.ShowItemToolTips = true; + this.listModules.Size = new System.Drawing.Size(424, 345); + this.listModules.TabIndex = 1; + this.listModules.UseCompatibleStateImageBehavior = false; + this.listModules.View = System.Windows.Forms.View.Details; + this.listModules.DoubleClick += new System.EventHandler(this.listModules_DoubleClick); + // + // columnModuleName + // + this.columnModuleName.Text = "Name"; + this.columnModuleName.Width = 110; + // + // columnBaseAddress + // + this.columnBaseAddress.Text = "Base Address"; + this.columnBaseAddress.Width = 90; + // + // columnModuleSize + // + this.columnModuleSize.Text = "Size"; + this.columnModuleSize.Width = 70; + // + // columnDescription + // + this.columnDescription.Text = "Description"; + this.columnDescription.Width = 140; + // + // tabMemory + // + this.tabMemory.Controls.Add(this.listMemory); + this.tabMemory.Location = new System.Drawing.Point(4, 22); + this.tabMemory.Name = "tabMemory"; + this.tabMemory.Padding = new System.Windows.Forms.Padding(3); + this.tabMemory.Size = new System.Drawing.Size(430, 351); + this.tabMemory.TabIndex = 1; + this.tabMemory.Text = "Memory"; + this.tabMemory.UseVisualStyleBackColor = true; + // + // listMemory + // + this.listMemory.AllowColumnReorder = true; + this.listMemory.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] { + this.columnHeader1, + this.columnHeader2, + this.columnHeader3, + this.columnHeader4, + this.columnHeader5}); + this.listMemory.Dock = System.Windows.Forms.DockStyle.Fill; + this.listMemory.FullRowSelect = true; + this.listMemory.HideSelection = false; + this.listMemory.Location = new System.Drawing.Point(3, 3); + this.listMemory.Name = "listMemory"; + this.listMemory.ShowItemToolTips = true; + this.listMemory.Size = new System.Drawing.Size(424, 345); + this.listMemory.TabIndex = 2; + this.listMemory.UseCompatibleStateImageBehavior = false; + this.listMemory.View = System.Windows.Forms.View.Details; + this.listMemory.DoubleClick += new System.EventHandler(this.listMemory_DoubleClick); + // + // columnHeader1 + // + this.columnHeader1.Text = "Address"; + this.columnHeader1.Width = 80; + // + // columnHeader2 + // + this.columnHeader2.Text = "Size"; + this.columnHeader2.Width = 80; + // + // columnHeader3 + // + this.columnHeader3.Text = "State"; + this.columnHeader3.Width = 70; + // + // columnHeader4 + // + this.columnHeader4.Text = "Type"; + this.columnHeader4.Width = 70; + // + // columnHeader5 + // + this.columnHeader5.Text = "Protection"; + this.columnHeader5.Width = 80; + // + // tabServices + // + this.tabServices.Controls.Add(this.listServices); + this.tabServices.Location = new System.Drawing.Point(4, 22); + this.tabServices.Name = "tabServices"; + this.tabServices.Padding = new System.Windows.Forms.Padding(3); + this.tabServices.Size = new System.Drawing.Size(796, 383); + this.tabServices.TabIndex = 1; + this.tabServices.Text = "Services"; + this.tabServices.UseVisualStyleBackColor = true; + // + // listServices + // + this.listServices.Dock = System.Windows.Forms.DockStyle.Fill; + this.listServices.DoubleBuffered = true; + this.listServices.Location = new System.Drawing.Point(3, 3); + this.listServices.Name = "listServices"; + this.listServices.Provider = null; + this.listServices.Size = new System.Drawing.Size(790, 377); + this.listServices.TabIndex = 0; + this.listServices.DoubleClick += new System.EventHandler(this.listServices_DoubleClick); + // + // menuService + // + this.menuService.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] { + this.goToProcessServiceMenuItem, + this.startServiceMenuItem, + this.continueServiceMenuItem, + this.pauseServiceMenuItem, + this.stopServiceMenuItem, + this.deleteServiceMenuItem, + this.propertiesServiceMenuItem, + this.menuItem8, + this.copyServiceMenuItem, + this.selectAllServiceMenuItem}); + this.menuService.Popup += new System.EventHandler(this.menuService_Popup); + // + // goToProcessServiceMenuItem + // + this.vistaMenu.SetImage(this.goToProcessServiceMenuItem, global::ProcessHacker.Properties.Resources.arrow_right); + this.goToProcessServiceMenuItem.Index = 0; + this.goToProcessServiceMenuItem.Text = "&Go to Process"; + this.goToProcessServiceMenuItem.Click += new System.EventHandler(this.goToProcessServiceMenuItem_Click); + // + // startServiceMenuItem + // + this.vistaMenu.SetImage(this.startServiceMenuItem, global::ProcessHacker.Properties.Resources.control_play_blue); + this.startServiceMenuItem.Index = 1; + this.startServiceMenuItem.Text = "&Start"; + this.startServiceMenuItem.Click += new System.EventHandler(this.startServiceMenuItem_Click); + // + // continueServiceMenuItem + // + this.continueServiceMenuItem.Index = 2; + this.continueServiceMenuItem.Text = "&Continue"; + this.continueServiceMenuItem.Click += new System.EventHandler(this.continueServiceMenuItem_Click); + // + // pauseServiceMenuItem + // + this.vistaMenu.SetImage(this.pauseServiceMenuItem, global::ProcessHacker.Properties.Resources.control_pause_blue); + this.pauseServiceMenuItem.Index = 3; + this.pauseServiceMenuItem.Text = "&Pause"; + this.pauseServiceMenuItem.Click += new System.EventHandler(this.pauseServiceMenuItem_Click); + // + // stopServiceMenuItem + // + this.vistaMenu.SetImage(this.stopServiceMenuItem, global::ProcessHacker.Properties.Resources.control_stop_blue); + this.stopServiceMenuItem.Index = 4; + this.stopServiceMenuItem.Text = "S&top"; + this.stopServiceMenuItem.Click += new System.EventHandler(this.stopServiceMenuItem_Click); + // + // deleteServiceMenuItem + // + this.vistaMenu.SetImage(this.deleteServiceMenuItem, global::ProcessHacker.Properties.Resources.cross); + this.deleteServiceMenuItem.Index = 5; + this.deleteServiceMenuItem.Text = "Delete"; + this.deleteServiceMenuItem.Click += new System.EventHandler(this.deleteServiceMenuItem_Click); + // // propertiesServiceMenuItem // this.propertiesServiceMenuItem.DefaultItem = true; @@ -1287,40 +1330,10 @@ this.propertiesServiceMenuItem.Text = "&Properties..."; this.propertiesServiceMenuItem.Click += new System.EventHandler(this.propertiesServiceMenuItem_Click); // - // startServiceMenuItem + // menuItem8 // - this.vistaMenu.SetImage(this.startServiceMenuItem, global::ProcessHacker.Properties.Resources.control_play_blue); - this.startServiceMenuItem.Index = 1; - this.startServiceMenuItem.Text = "&Start"; - this.startServiceMenuItem.Click += new System.EventHandler(this.startServiceMenuItem_Click); - // - // stopServiceMenuItem - // - this.vistaMenu.SetImage(this.stopServiceMenuItem, global::ProcessHacker.Properties.Resources.control_stop_blue); - this.stopServiceMenuItem.Index = 4; - this.stopServiceMenuItem.Text = "S&top"; - this.stopServiceMenuItem.Click += new System.EventHandler(this.stopServiceMenuItem_Click); - // - // pauseServiceMenuItem - // - this.vistaMenu.SetImage(this.pauseServiceMenuItem, global::ProcessHacker.Properties.Resources.control_pause_blue); - this.pauseServiceMenuItem.Index = 3; - this.pauseServiceMenuItem.Text = "&Pause"; - this.pauseServiceMenuItem.Click += new System.EventHandler(this.pauseServiceMenuItem_Click); - // - // deleteServiceMenuItem - // - this.vistaMenu.SetImage(this.deleteServiceMenuItem, global::ProcessHacker.Properties.Resources.cross); - this.deleteServiceMenuItem.Index = 5; - this.deleteServiceMenuItem.Text = "Delete"; - this.deleteServiceMenuItem.Click += new System.EventHandler(this.deleteServiceMenuItem_Click); - // - // goToProcessServiceMenuItem - // - this.vistaMenu.SetImage(this.goToProcessServiceMenuItem, global::ProcessHacker.Properties.Resources.arrow_right); - this.goToProcessServiceMenuItem.Index = 0; - this.goToProcessServiceMenuItem.Text = "&Go to Process"; - this.goToProcessServiceMenuItem.Click += new System.EventHandler(this.goToProcessServiceMenuItem_Click); + this.menuItem8.Index = 7; + this.menuItem8.Text = "-"; // // copyServiceMenuItem // @@ -1328,32 +1341,27 @@ this.copyServiceMenuItem.Index = 8; this.copyServiceMenuItem.Text = "Copy"; // - // injectorMenuItem + // selectAllServiceMenuItem // - this.vistaMenu.SetImage(this.injectorMenuItem, global::ProcessHacker.Properties.Resources.asterisk_orange); - this.injectorMenuItem.Index = 11; - this.injectorMenuItem.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] { - this.startProcessProcessMenuItem, - this.getCommandLineProcessMenuItem}); - this.injectorMenuItem.Text = "Injector"; + this.selectAllServiceMenuItem.Index = 9; + this.selectAllServiceMenuItem.Text = "Select &All"; + this.selectAllServiceMenuItem.Click += new System.EventHandler(this.selectAllServiceMenuItem_Click); // - // startProcessProcessMenuItem + // vistaMenu // - this.startProcessProcessMenuItem.Index = 0; - this.startProcessProcessMenuItem.Text = "Start Process..."; - this.startProcessProcessMenuItem.Click += new System.EventHandler(this.startProcessProcessMenuItem_Click); + this.vistaMenu.ContainerControl = this; // - // getCommandLineProcessMenuItem + // getSNFAMenuItem // - this.getCommandLineProcessMenuItem.Index = 1; - this.getCommandLineProcessMenuItem.Text = "Get Command Line..."; - this.getCommandLineProcessMenuItem.Click += new System.EventHandler(this.getCommandLineProcessMenuItem_Click); + this.getSNFAMenuItem.Index = 2; + this.getSNFAMenuItem.Text = "Get Symbol Name From Address..."; + this.getSNFAMenuItem.Click += new System.EventHandler(this.getSNFAMenuItem_Click); // // HackerWindow // this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; - this.ClientSize = new System.Drawing.Size(804, 430); + this.ClientSize = new System.Drawing.Size(804, 462); this.Controls.Add(this.tabControlBig); this.Controls.Add(this.statusBar); this.Controls.Add(this.panelVirtualProtect); @@ -1537,6 +1545,7 @@ private System.Windows.Forms.MenuItem injectorMenuItem; private System.Windows.Forms.MenuItem startProcessProcessMenuItem; private System.Windows.Forms.MenuItem getCommandLineProcessMenuItem; + private System.Windows.Forms.MenuItem getSNFAMenuItem; } } diff --git a/trunk/ProcessHacker/Forms/HackerWindow.cs b/trunk/ProcessHacker/Forms/HackerWindow.cs index 485e294d0..78d2ca390 100644 --- a/trunk/ProcessHacker/Forms/HackerWindow.cs +++ b/trunk/ProcessHacker/Forms/HackerWindow.cs @@ -322,6 +322,20 @@ namespace ProcessHacker } } + private void getSNFAMenuItem_Click(object sender, EventArgs e) + { + PromptBox box = new PromptBox(); + + if (box.ShowDialog() == DialogResult.OK) + { + int address = (int)BaseConverter.ToNumberParse(box.Value); + + InformationBox infoBox = new InformationBox(Symbols.GetNameFromAddress(address)); + + infoBox.ShowDialog(); + } + } + private void inspectPEFileMenuItem_Click(object sender, EventArgs e) { OpenFileDialog ofd = new OpenFileDialog();