예제 #1
0
        private void ButtonScan_Click(object sender, RoutedEventArgs e)
        {
            // If the scan value is a valid integer
            if (int.TryParse(TextBoxScanValue.Text, out int scanValue))
            {
                // Get PID of the selected process
                int pid = (ListViewProcessList.SelectedItem as ProcessInfo).Id;

                // Get pointers to the specified value in memory of the selected process
                List <IntPtr> ptrs = ProcessMemory.Find(pid, scanValue);

                // Clear the list
                AddrVals.Clear();
                // Populate the list with new address/value objects that contain vital information about the matching values
                ptrs.ForEach(x => AddrVals.Add(new AddressValue(pid, x)));

                // Update the UI
                UpdateListViewAddressesItems();
                UpdateValueCount();

                // Start refreshing the values
                TimerRefreshValues.Start();
            }
            else
            {
                ShowErrorBox("Invalid scan value!");
            }
        }
예제 #2
0
 public bool Edit(int editValue)
 {
     // Change the value of this variable to the specified value
     return(ProcessMemory.Write(ProcessId, Address, editValue));
 }
예제 #3
0
 private int GetValue()
 {
     return(ProcessMemory.Read(ProcessId, Address));
 }