C# Использование WMI для планирования задачи на удаленном сервере

Я пытаюсь запустить командный файл на удаленном сервере Windows 2008. Мне нужно, чтобы файл работал в интерактивном режиме, так как он откроет множество интерактивных программ. Я не могу установить службы на удаленном сервере. У меня возникли проблемы при попытке создать задачу на удаленном сервере.

Код:

string command = @"c:\test.bat > c:\tmp_dr.dat";
ConnectionOptions conO = new ConnectionOptions();
conO.Username = username;
conO.Password = password;

ManagementScope scope = new ManagementScope(@"\\10.12.62.205\root\cimv2", conO);
scope.Connect();

//Getting time
string serverTime = null;
SelectQuery timeQuery = new SelectQuery(@"select LocalDateTime from Win32_OperatingSystem");
ManagementObjectSearcher timeQuerySearcher = new ManagementObjectSearcher(timeQuery);
foreach (ManagementObject mo in timeQuerySearcher.Get())
{
    serverTime = mo["LocalDateTime"].ToString();
}

//Adding 2 minutes to the time
string addTwoMinutes = (Convert.ToInt32(Strings.Mid(serverTime, 9, 4)) + 1).ToString();
if (Microsoft.VisualBasic.Strings.Mid(serverTime, 9, 1).Equals("0"))//Check if hour is zero
{
    addTwoMinutes = "0" + addTwoMinutes;
}
serverTime = Strings.Replace(serverTime, (Strings.Mid(serverTime, 9, 4)), addTwoMinutes, 1, -1, CompareMethod.Text);

//running command
object[] cmdParams = { command, serverTime, false, null, null, true, 0};
ManagementClass serverCommand = new ManagementClass(scope, new ManagementPath("Win32_ScheduledJob"), null);
serverCommand.InvokeMethod("Create", cmdParams);

Я могу получить время, но, похоже, это не создает задачу на удаленном сервере. Я очень новичок во всем этом, поэтому я был бы признателен за любые рекомендации по этому вопросу, которые люди могут предоставить. Спасибо

ТАКЖЕ: psexec не возможен.

РЕШЕНИЕ НАЙДЕНО:

Переменная команды отправлялась в AT в виде строки []. Тупая ошибка.

0 ответов

Другие вопросы по тегам