private void sendToRecheck_Click(object sender, RoutedEventArgs e) { if (hitsListView.SelectedItems.Count == 0) { Globals.LogError(Components.HitsDB, "No hits selected!", true); return; } var first = (Hit)hitsListView.SelectedItem; var partialName = "Recheck-" + BlockBase.MakeValidFileName(first.ConfigName); // Choose list name var fileName = BlockBase.GetFirstAvailableFileName("Wordlists\\", partialName, "txt"); // Write to disk var path = $@"{Directory.GetCurrentDirectory()}\Wordlists\{fileName}"; using (var sw = new StreamWriter(path)) { foreach (Hit selected in hitsListView.SelectedItems) { sw.WriteLine(selected.Data); } } // Import it var listName = fileName.Substring(0, fileName.Length - 4); var wordlist = new Wordlist(listName, path, Globals.environment.RecognizeWordlistType(first.Data), ""); Globals.mainWindow.WordlistManagerPage.AddWordlist(wordlist); var runner = Globals.mainWindow.CurrentRunnerPage; if (runner == null) { MessageBox.Show("Please select a Runner from the manager first!"); return; } else if (runner.vm.Busy) { MessageBox.Show("The selected Runner is busy, please choose another one!"); return; } try { runner.vm.SetWordlist(Globals.mainWindow.WordlistManagerPage.GetList(listName)); } catch { } // Try to select the config referring to the first selected hit try { var cfg = Globals.mainWindow.ConfigsPage.ConfigManagerPage.vm.ConfigsList.First(c => c.Name == first.ConfigName).Config; runner.vm.SetConfig(cfg, false); runner.vm.BotsNumber = Math.Min(cfg.Settings.SuggestedBots, hitsListView.SelectedItems.Count); } catch { } // Switch to Runner Globals.mainWindow.menuOptionRunner_MouseDown(this, null); }