C# перезапуск удаленных сервисов - PullRequest
0 голосов
/ 04 мая 2020

Я хочу удаленно перезапустить службы RDP, если я попытаюсь вернуться домой, конечно, я получаю сообщение об ошибке, но это нормально, но если я попытаюсь на моем рабочем месте, ничего не произойдет. Если я напишу правильное имя p c или неправильное ничего. Как я могу решить эту проблему?

 private void SrvRes_Click(object sender, EventArgs e)
        {
            Process sp = new Process();
            sp.StartInfo.UseShellExecute = false;
            sp.StartInfo.CreateNoWindow = true;
            sp.StartInfo.FileName = "cmd.exe";
            sp.StartInfo.Arguments = "/c SC \\" + PcNameLb.Text + " stop UmRdpService && SC \\" + PcNameLb.Text +  "stop TermService";
            sp.Start();
            sp.EnableRaisingEvents = true;
            sp.Exited += new EventHandler(sp_Exited);
        }

        private void sp_Exited(object sender, EventArgs e)
        {
            var p = sender as Process;
            if (p.ExitCode != 0)
            {
                MessageBox.Show(string.Format("Process failed: ExitCode = {0}", p.ExitCode));
            }
            else
            {
                Process st = new Process();
                st.StartInfo.UseShellExecute = false;
                st.StartInfo.CreateNoWindow = true;
                st.StartInfo.FileName = "cmd.exe";
                st.StartInfo.Arguments = "/c SC \\" + PcNameLb.Text + " start UmRdpService && SC \\" + PcNameLb.Text + "start TermService";
                st.Start();
                st.EnableRaisingEvents = true;
                st.Exited += new EventHandler(st_Exited);

            }

        }

        private void st_Exited(object sender, EventArgs e)
        {
            sm = new SuccesMsg
            {
                StartPosition = FormStartPosition.CenterParent
            };
            sm.ShowDialog(this);
        }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...