Мне поручено автоматизировать внутренний процесс. Этот процесс включает сначала вход на удаленный сервер (A). С сервера A пользователь подключается к удаленному серверу (B).Запуск пакетного сценария на удаленном сервере
После аутентификации на сервере B, то C# приложение должно запустить пакетный файл
Я использовал некоторые примеры кода, образуют пост на CodeProject сделать все удаленные соединения через какой-то графический интерфейс и работает без проблем , В коде используется ActiveX MSTSC Library.
Затем я подать в суд на этот блок кода, в надежде начать Batch File:
private void button3_Click(object sender, EventArgs e)
{
try
{
//PowerShell ps = PowerShell.Create();
//ps.AddCommand("Start-Process");
//ps.AddArgument("/c c:\\Recycle.bat");
//ps.Invoke();
Process p = new Process();
p.StartInfo.FileName = "C://Recycle.bat";
p.StartInfo.CreateNoWindow = false;
p.Start();
}
catch(Exception exception)
{
Console.WriteLine(exception.Message);
}
}
Я попытался с помощью класса PowerShell, а также объекты System.Diagnostics.Process. Объект PS yeilds «файл не найден», где объекты процесса выполняют сценарий «Recycle.bat» на моем локальном компьютере, а не удаленном сервере.
Как вы присоедините объект Process к удаленному серверу, а не к локальному компьютеру?
Благодарим за помощь.
Любая причина, по которой вы не можете просто использовать winrs для запуска удаленного командного файла? EG 'winrs -r: (имя удаленного sserver host) c: \ recycle.bat' – Tim
Это приложение разрабатывается как простой графический интерфейс, который будет использоваться внутренней командой. В конце концов, приложение должно иметь контрольный список серверов, где пользователи отключают серверы на «переработку» и запускают клики. –
Ах. Итак, если это элемент на основе gui в C#, то посмотрите этот поток: http://stackoverflow.com/questions/428276/how-to-execute-a-command-in-a-remote-computer, но если вы хотите, чтобы он работал через powershell, а затем попробуйте эту ссылку: http://stackoverflow.com/questions/9535515/powershell-execute-remote-exe-with-command-line-arguments-on-remote-computer – Tim