private void Button_FindMatches_Click(object sender, RoutedEventArgs e) { var processes = Process.GetProcessesByName(SelectedProcessName); if (!processes.Any()) { MessageBox.Show("Select a process"); return; } var process = processes.First(); var memory = new Memory(process.Id); SpiderMatcher = new SpiderMatcher(); try { var searches = new List <SpiderSearch>(); var tabs = tabSearches.Items; foreach (var tab in tabs) { var tabItem = tab as TabItem; if (tabItem != null && tabItem.Content is SpiderControl) { var spiderControl = (SpiderControl)tabItem.Content; searches.Add(spiderControl.SpiderSearch); } } SpiderMatcher.Match(searches, memory); Matches = SpiderMatcher.Matches.Take(1000).ToList(); } finally { memory.Close(); } }
private void Button_ReloadValues_Click(object sender, RoutedEventArgs e) { var processes = Process.GetProcessesByName(SelectedProcessName); if (!processes.Any()) { MessageBox.Show("Select a process"); return; } var process = processes.First(); var memory = new Memory(process.Id); try { if (SpiderMatcher != null) { SpiderMatcher.ReloadValues(memory); } } finally { memory.Close(); } }
public MainWindow() { Matches = new List <SpiderMatch>(); SpiderMatcher = new SpiderMatcher(); Processes = new ObservableCollection <string>(); var processes = Process.GetProcesses(); foreach (var process in processes) { Processes.Add(process.ProcessName); } InitializeComponent(); if (Processes.Count > 0) { ComboBox_Processes.SelectedIndex = 0; } var task = Task.Factory.StartNew(() => { while (true) { Thread.Sleep(1); if (InputSpan.GetKeys(Keys.F2)) { Dispatcher.Invoke(() => { var content = tabSearches.SelectedContent as SpiderControl; if (content != null) { content.Button_ReloadValues_Click(null, null); Thread.Sleep(1000); } }); } if (InputSpan.GetKeys(Keys.F3)) { Dispatcher.Invoke(() => { var content = tabSearches.SelectedContent as SpiderControl; if (content != null) { content.Button_ReFilterValues_Click(null, null); Thread.Sleep(1000); } }); } if (InputSpan.GetKeys(Keys.F4)) { Dispatcher.Invoke(() => { var content = tabSearches.SelectedContent as SpiderControl; if (content != null) { content.Button_Seach_Click(null, null); Thread.Sleep(1000); } }); } } }); }