public DirtyDeeds() { InitializeComponent(); if (!MagicHelpers.SetDebugPrivileges()) { MessageBox.Show("Failed to set debug privileges. Run as Administrator."); return; } InstallFont(); //clientsComboBox.DataSource = games; UpdateGames(); UpdateTrayItemList(); hookProc = new HookProc(HookCallback); keyHookId = SetKeyHook(hookProc); mouseHookId = SetMouseHook(hookProc); ItemProcessingSettings = new ItemProcessingSettings(ItemConfigFileName); ItemProcessingSettings.Load(); LoadSettings(); clientsToolStripMenuItem.DropDown.Closing += RestrictClosing; //var testForm = new TestForm(); //testForm.Show(); }
private void comboBox1_DropDown(object sender, EventArgs e) { var processes = MagicHelpers.FindProcessesByName("WorldOfTanks"); wotProcesses = processes.Select(it => new ProcessInfo(it.Id, it.ProcessName)).ToList(); processesComboBox.DataSource = wotProcesses; processesComboBox.DisplayMember = "DisplayName"; }
public RemoteProcess(int ProcessId) { var Process = MagicHelpers.FindProcessById(ProcessId); if (Process == null) { throw new MagicException($"Process with id {ProcessId} not found"); } this.Process = Process; }
static void Main(string[] args) { CascBP cascBP = null; Process process; try { process = MagicHelpers.SelectProcess("world of warcraft"); var debugging = false; Kernel32.CheckRemoteDebuggerPresent(process.Handle, ref debugging); if (debugging) { throw new Exception("Already being debugged."); } cascBP = new CascBP(process); } catch (Exception e) { PrettyLogger.WriteLine(ConsoleColor.Red, "Failed to select process: \"{0}\"", e.Message); return; } if (!MagicHelpers.SetDebugPrivileges()) { PrettyLogger.WriteLine(ConsoleColor.Red, "Failed to set debug privileges"); return; } try { var build = ExtractBuildFromArgs(args); if (build != null) { cascBP.ForceBuild((int)build); } cascBP.Start(); cascBP.Join(); } catch (Exception e) { PrettyLogger.WriteLine(ConsoleColor.Red, "Exception: {0}", e.Message); return; } }
protected void UpdateGames() { games.ForEach(g => { if (!g.Exists()) { g.Dispose(); } }); games.RemoveAll(g => !g.Exists()); var processes = MagicHelpers.FindProcessesByInternalName("diablo ii"); foreach (var process in processes) { if (games.Any(g => g.Process.Id == process.Id)) { continue; } games.Add(new D2Game(process, this)); } }
public static RemoteProcess GetById(int ProcessId) { return(MagicHelpers.FindProcessById(ProcessId)); }