Example #1
0
        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();
        }
Example #2
0
        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";
        }
Example #3
0
        public RemoteProcess(int ProcessId)
        {
            var Process = MagicHelpers.FindProcessById(ProcessId);

            if (Process == null)
            {
                throw new MagicException($"Process with id {ProcessId} not found");
            }

            this.Process = Process;
        }
Example #4
0
        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;
            }
        }
Example #5
0
        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));
            }
        }
Example #6
0
 public static RemoteProcess GetById(int ProcessId)
 {
     return(MagicHelpers.FindProcessById(ProcessId));
 }