private void loadModuleIntoPEViewerToolStripMenuItem_Click(object sender, EventArgs e) { if (lvModules.SelectedItems.Count > 0) { ModuleListViewItem i = (ModuleListViewItem)lvModules.SelectedItems[0]; LoadInfomation = i.ModuleInfomation; this.DialogResult = DialogResult.Yes; } }
private void unloadSelectedModulesToolStripMenuItem_Click(object sender, EventArgs e) { foreach (ListViewItem i in lvModules.SelectedItems) { ModuleListViewItem item = (ModuleListViewItem)i; IntPtr pHandle = PELoader.OpenProcessHandle(ProcessID); DllInjector.UnloadDll(pHandle, item.ModuleInfomation.ModuleBaseAddress); PELoader.CloseProcessHandle(pHandle); PopulateList(); } }
private void dumpSelectedModulesToolStripMenuItem_Click(object sender, EventArgs e) { if (lvModules.SelectedItems.Count < 1) { return; } if (lvModules.SelectedItems.Count == 1) { ModuleListViewItem item = (ModuleListViewItem)lvModules.SelectedItems[0]; using (SaveFileDialog sfd = new SaveFileDialog()) { sfd.Filter = string.Format("Module dump|*{0}", Path.GetExtension(item.ModulePath)); if (sfd.ShowDialog() == DialogResult.OK) { DumpModule(item.ModuleInfomation, sfd.FileName); MessageBox.Show("Done."); } } } else { using (FolderBrowserDialog fbd = new FolderBrowserDialog()) { if (fbd.ShowDialog() == DialogResult.OK) { foreach (ListViewItem i in lvModules.SelectedItems) { ModuleListViewItem item = (ModuleListViewItem)i; DumpModule(item.ModuleInfomation, Path.Combine(fbd.SelectedPath, "Dump_" + Path.GetFileName(item.ModulePath))); } MessageBox.Show("Done."); } } } }