public async Task OnGetAsync() { int ScreenID = Convert.ToInt32(EncryptionHelper.Decrypt(HttpContext.Request.Query["p"])); List <SearchedProcessConnection> ProcessConnections = await Mediator.Send(new GetProcessConnection() { }); ProcessConnections = ProcessConnections.Where(c => c.ScreenId == ScreenID).ToList(); List <SearchedProcess> Processes = await Mediator.Send(new GetProcess() { ScreenId = ScreenID }); if (ProcessConnections.Any()) { foreach (SearchedProcessConnection PC in ProcessConnections) { ListOfProcesses.Add(new SelectListItem(PC.ConnectionText, PC.ConnectionId.ToString())); } if (Processes.Any()) { HttpContext.Session.SetInt32("ModuleID", Processes.FirstOrDefault().ModuleId); HttpContext.Session.SetInt32("ProcessID", Processes.FirstOrDefault().Id); } } }
public void ChangeGame() { try { foreach (var name in games.Keys) { ListOfProcesses.Add(Process.GetProcessesByName(name)); } foreach (var processes in ListOfProcesses) { foreach (var proc in processes) { proc.CloseMainWindow(); proc.WaitForExit(); } } StartGame(); MinimizeForm(); ListOfProcesses.Clear(); } catch (Exception ex) { Console.WriteLine($"Something went wrong with changing the game: {ex}"); } }
/// <summary> /// Opens a dialog for the user to choose a new programm, /// creates the process and adds it to the list /// </summary> private void AddProcessToList() { OpenFileDialog ofd = new OpenFileDialog { Title = GenDefString.OpenFileDialogDefaultTitle, Multiselect = false, InitialDirectory = GenDefString.OpenFileDialogInitialDirectory, CheckFileExists = true, CheckPathExists = true }; if (ofd.ShowDialog() == true) { if (!String.IsNullOrEmpty(ofd.FileName)) { if (ListOfProcesses.Any(p => p.ProcessPath == ofd.FileName)) { MessageBox.Show(GenDefString.ProcessAlreadyInList); } else { ListOfProcesses.Add(new ProcessModel(ofd.FileName)); } } IndexOfSelectedProcess = ListOfProcesses.Count - 1; } }
/// <summary> /// Clears the list of processes /// </summary> private void ClearAllProcessesFromList() { ListOfProcesses.Clear(); }
/// <summary> /// Deletes the currently selected Process from teh list /// </summary> private void DeleteProcessFromList() { ListOfProcesses.RemoveAt(IndexOfSelectedProcess); }