|
|
запуск приложений на удаленном компьютере
Здрасте. Пытаюсь запустить прогу на другом компе, в инете нашел код:
Код:
private void button1_Click(object sender, EventArgs e)
{
string sLogin = "admin";
string sPassword = "123";
string sComputer = "192.168.1.1";
ManagementScope ms;
ConnectionOptions co = new ConnectionOptions();
co.Username = sLogin;
co.Password = sPassword;
co.EnablePrivileges = true;
co.Impersonation = ImpersonationLevel.Impersonate;
ms = new ManagementScope(string.Format(@"\\{0}\root\CIMV2", sComputer), co);
ms.Connect();
ManagementPath path = new ManagementPath("Win32_Process");
System.Management.ManagementClass classObj = new System.Management.ManagementClass(ms, path, null);
System.Management.ManagementBaseObject inParams = null;
inParams = classObj.GetMethodParameters("Create");
inParams["CommandLine"] = @"C:\1\прога2.exe";
ManagementBaseObject outParams = classObj.InvokeMethod("Create", inParams, null);
}
Программа появляется только в диспетчере задач секунд на 20, но не отображается и ничего не выполняет.
Где копать, что исправлять (в этой или проге2)? При запуске вручную прога2 работает корректно.
|
Отображаться она и не должна:
Цитата:
Цитата Create Method of the Win32_Process Class
For security reasons the Win32_Process.Create method cannot be used to start an interactive process remotely.
Windows 2000 Professional SP2 and earlier, Windows NT, and Windows 98/95: Win32_Process.Create can create an interactive process remotely.
|
|
А каким образом или через какие функции запустить чтобы отображалось?
|
Хотелось бы обойтись только кодом, без сторонних приложений. Возможно ли это?
|
Efsey, а зачем придумывать велосипед? С помощью этой утилиты все будет проходить очень быстро и гладко. Я так писал для себя утилиту удаленной установки Radmin 2.2. Выбрал комп, нажал установить - через 3-5 сек. все сделано. Если надо, пример покажу.
|
Пример бы, конечно, не помешал. Но это всё получается типа, чтобы сделать то-то сказал одному, тот передал второму напомнить третьему, дабы он пнул четвертого, который попробует выполнить задачу, если конечно её поймёт :teeth:
|
Efsey, все намного проще. :) После праздников выложу код, там все очень просто и прозрачно :)
|
Вложений: 1
Во вложении пример. Пароль на архивчик 123. Будут вопросы, спрашивай.
|
Столкнулся с такой проблемой - Рsexec выдает не читаемую ошибку при попытке запустить удаленно программу на Win2k3, на Win7 запускает нормально. Код процедуры:
Код:
public void uz()
{
string PutProg = "Psexec.exe";
string ArgProg = "\\comp1 -u admin -p 123 -i -d notepad.exe";
System.Diagnostics.Process.Start(PutProg, ArgProg);
}
Win2k3 и Win7 находятся в одном домене.
|
EvgeniyQQQ |
09-11-2010 11:53 1538341 |
Цитата:
Цитата Efsey
Рsexec выдает не читаемую ошибку »
|
Просто кодировки консоли и вывода программы Рsexec не совпадают.
"Кракозябры" можно расшифровать с помощью декодера.
|
Хм, жалуется на параметры. Они и там и там одинаковые, только ОС разные. Почему на 2003 не запускает?
В неинтерактивном запускает, а так отказывается. Где искать разгадку?
|
Время: 13:48.
© OSzone.net 2001-