Запуск удаленного exe на удаленном устройствеC#

Место общения программистов C#
Ответить
Anonymous
 Запуск удаленного exe на удаленном устройстве

Сообщение Anonymous »

У меня возникла проблема, которую, возможно, нелегко решить, но я надеюсь, что кто-нибудь сможет помочь. Я пытаюсь запустить exe-файл для установки некоторого программного обеспечения (клиент SCCM) на удаленное устройство.
Итак, происходит следующее: я запускаю программу со своего компьютера (Host1) для подключения на удаленное устройство (Host2) и поручить этому устройству запустить exe-файл с сервера.
Я безуспешно использовал стандартный код WMI для удаленного выполнения:

Код: Выделить всё

ConnectionOptions connOptions = new ConnectionOptions();
connOptions.Impersonation = ImpersonationLevel.Impersonate;
connOptions.EnablePrivileges = true;
ManagementScope manScope = new ManagementScope(String.Format(@"\\{0}\ROOT\CIMV2", Host2), connOptions);
manScope.Connect();
if(manScope.IsConnected)
{
ObjectGetOptions objectGetOptions = new ObjectGetOptions();
ManagementPath managementPath = new ManagementPath("Win32_Process");
ManagementClass processClass = new ManagementClass(manScope, managementPath, objectGetOptions);

ManagementBaseObject inParams = processClass.GetMethodParameters("Create");
inParams["CommandLine"] = @sCommand;
ManagementBaseObject outParams = processClass.InvokeMethod("Create", inParams, null);
}
else
{
MessageBox.Show("An error occurerd while attempting to connect to WMI.");
}
Проблема, с которой я столкнулся, заключается в выполнении sCommand, когда exe-файл находится на сервере. Поэтому, когда параметр равен «\\server\share\program.exe», ничего не происходит. Когда параметр «c:\Folder\program.exe», все работает отлично. К сожалению, на этих устройствах, на которые мы ориентируемся, отключены Admin$ и C$, и на жестком диске нет exe-файла.
К сожалению, я в недоумении – можно ли использовать Win32_Process .Создайте метод для запуска exe-файла UNC или можно ли скопировать exe-файл или даже папку, в которой он находится, на хост-устройство, когда Admin$ и C$ отключены? Я пытаюсь избежать psexec, и мне, честно говоря, интересно, столкнусь ли я с той же проблемой, используя его.
Изменить: из-за ограничений, находящихся вне моего контроля, я не разрешено размещать на виртуальной машине собственную службу Windows или Http и взаимодействовать через службу.

Подробнее здесь: https://stackoverflow.com/questions/220 ... ote-device
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»