示例#1
0
        private void new_scan_btn_Click(object sender, EventArgs e)
        {
            try
            {
                if (processManager == null)
                {
                    return;
                }

                if (MessageBox.Show("search size:" + (processManager.TotalMemorySize / 1024).ToString() + "KB") != DialogResult.OK)
                {
                    return;
                }

                memoryHelper.InitMemoryHandler((string)valueTypeList.SelectedItem, (CompareType)compareList.SelectedIndex);
                result_list_view.Items.Clear();
                processManager.ClearAddressList();

                WorkerArgs args = new WorkerArgs();
                args.ValueType = (string)valueTypeList.SelectedItem;
                setButtons(false);
                new_scan_worker.RunWorkerAsync(args);
            }
            catch (Exception exception)
            {
                MessageBox.Show(exception.Message);
            }
        }
示例#2
0
        private void PointerCheckerPointer_Tick(object sender, EventArgs e)
        {
            if (!Pointer)
            {
                return;
            }

            try
            {
                ValueType valueType = MemoryHelper.GetValueTypeByString(type_box.Text);

                long base_address = 0;
                for (int i = 0; i < offset_box_list.Count; ++i)
                {
                    long address = long.Parse(offset_box_list[i].Text, System.Globalization.NumberStyles.HexNumber);

                    if (i != offset_box_list.Count - 1)
                    {
                        byte[] next_address = MemoryHelper.ReadMemory((ulong)(address + base_address), 8);
                        base_address = BitConverter.ToInt64(next_address, 0);
                        offset_label_list[i].Text = base_address.ToString("X");
                    }
                    else
                    {
                        MemoryHelper.InitMemoryHandler(valueType, CompareType.NONE, true);
                        byte[] data = MemoryHelper.ReadMemory((ulong)(address + base_address), MemoryHelper.Length);
                        offset_label_list[i].Text = MemoryHelper.BytesToString(data);
                    }
                }
            }
            catch
            {
            }
        }
示例#3
0
        public override void Refresh()
        {
            MemoryHelper memoryHelper = new MemoryHelper();

            memoryHelper.InitMemoryHandler(Type, CompareType.NONE);

            memoryHelper.SetBytesByType(ulong.Parse(Address, NumberStyles.HexNumber), memoryHelper.StringToBytes(value_));
            value_ = memoryHelper.BytesToString(memoryHelper.GetBytesByType(ulong.Parse(Address, NumberStyles.HexNumber)));
        }
示例#4
0
        public PointerFinder(main mainForm, ulong address, string dataType, ProcessManager processManager, DataGridView cheat_list_view)
        {
            MemoryHelper = new MemoryHelper(true, 0);
            MemoryHelper.InitMemoryHandler(dataType, CONSTANT.EXACT_VALUE, true);

            this.mainForm       = mainForm;
            this.address        = address;
            this.cheatList      = cheat_list_view;
            this.processManager = processManager;

            InitializeComponent();
        }
示例#5
0
        private void new_scan_btn_Click(object sender, EventArgs e)
        {
            try
            {
                if (new_scan_btn.Text == CONSTANT.FIRST_SCAN)
                {
                    if (MessageBox.Show("search size:" + (processManager.MappedSectionList.TotalMemorySize / 1024).ToString() + "KB") != DialogResult.OK)
                    {
                        return;
                    }

                    memoryHelper.InitMemoryHandler((string)valueTypeList.SelectedItem,
                                                   (string)compareTypeList.SelectedItem, alignment_box.Checked, value_box.Text.Length);

                    setButtons(false);
                    new_scan_btn.Enabled  = true;
                    valueTypeList.Enabled = false;
                    alignment_box.Enabled = false;
                    //section_list_box.lo = false;

                    new_scan_worker.RunWorkerAsync();

                    new_scan_btn.Text = CONSTANT.STOP;
                }
                else if (new_scan_btn.Text == CONSTANT.NEW_SCAN)
                {
                    valueTypeList.Enabled = true;
                    alignment_box.Enabled = true;
                    //section_list_box.Enabled = true;
                    refresh_btn.Enabled   = false;
                    next_scan_btn.Enabled = false;
                    new_scan_btn.Text     = CONSTANT.FIRST_SCAN;

                    result_list_view.Items.Clear();
                    processManager.MappedSectionList.ClearResultList();
                    InitCompareTypeListOfFirstScan();
                }
                else if (new_scan_btn.Text == CONSTANT.STOP)
                {
                    new_scan_worker.CancelAsync();
                }
            }
            catch (Exception exception)
            {
                MessageBox.Show(exception.Message);
            }
        }
示例#6
0
        private void btnNewScan_Click(object sender, EventArgs e)
        {
            try
            {
                if (btnNewScan.Text == CONSTANT.FIRST_SCAN)
                {
                    if (MessageBox.Show("search size:" + (processManager.MappedSectionList.TotalMemorySize / 1024).ToString() + "KB") != DialogResult.OK)
                    {
                        return;
                    }

                    memoryHelper.InitMemoryHandler((string)cbValueTypeList.SelectedItem, (string)cbCompareTypeList.SelectedItem, cbAlignment.Checked, txtValue.Text.Length);

                    setButtons(false);
                    btnNewScan.Enabled      = true;
                    cbValueTypeList.Enabled = false;
                    cbAlignment.Enabled     = false;
                    //section_list_box.lo = false;

                    bwNewScan.RunWorkerAsync();

                    btnNewScan.Text = CONSTANT.STOP;
                }
                else if (btnNewScan.Text == CONSTANT.NEW_SCAN)
                {
                    cbValueTypeList.Enabled = true;
                    cbAlignment.Enabled     = true;
                    //section_list_box.Enabled = true;
                    btnRefresh.Enabled  = false;
                    btnNextScan.Enabled = false;
                    btnNewScan.Text     = CONSTANT.FIRST_SCAN;

                    lvResult.Items.Clear();
                    processManager.MappedSectionList.ClearResultList();
                    InitCompareTypeListOfFirstScan();
                }
                else if (btnNewScan.Text == CONSTANT.STOP)
                {
                    bwNewScan.CancelAsync();
                }
            }
            catch (Exception exception)
            {
                MessageBox.Show(exception.Message);
            }
        }
示例#7
0
        public PointerFinder(main mainForm, ulong address, string dataType, ProcessManager processManager, DataGridView cheat_list_view)
        {
            MemoryHelper = new MemoryHelper(true, 0);
            MemoryHelper.InitMemoryHandler(dataType, CONSTANT.EXACT_VALUE, true);

            this.mainForm       = mainForm;
            this.address        = address;
            this.cheatList      = cheat_list_view;
            this.processManager = processManager;

            InitializeComponent();

            this.label1.Text        = LangHelper.GetLang("Address:");
            this.find_btn.Text      = LangHelper.GetLang("First Scan");
            this.next_btn.Text      = LangHelper.GetLang("Next Scan");
            this.fast_scan_box.Text = LangHelper.GetLang("FastScan");
        }