Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Программирование и базы данных (http://forum.oszone.net/forumdisplay.php?f=21)
-   -   Удаленный запуск программы под сессией пользователя (http://forum.oszone.net/showthread.php?t=259732)

reliter 30-04-2013 20:34 2142511

Удаленный запуск программы под сессией пользователя
 
Здравствуйте!
Возник вопрос по поводу возможности удаленного запуска программы под конкретной сессией пользователя.
При помощи WMI удаленно создается процесс, висит в таск менеджере, но само окошечко программы не появляется. Точно такие же симптомы наблюдаются, если запускать удаленно даже блокнот. Как я понимаю, дело в том, что пользователь сидит под одной сессией, а процесс создался в другой. Как это можно решить?

Iska 30-04-2013 21:22 2142539

Цитата:

Цитата reliter
При помощи WMI удаленно создается процесс, висит в таск менеджере, но само окошечко программы не появляется. »

И не появится.

Create method of the Win32_Process class (Windows):
Цитата:

Windows 2000 Professional with SP2 and earlier, Windows NT, and Windows 98/95: Win32_Process.Create can create an interactive process remotely.
От Windows XP и выше — не выйдет.

Цитата:

Цитата reliter
Как это можно решить? »

В рамках данной методики — никак. Если надо остаться в рамках Wbem — используйте старый дедовский способ: создание задания посредством Win32_ScheduledJob/at.exe, отсрочив его однократный запуск на минуту.

reliter 30-04-2013 23:14 2142580

Iska, огромное спасибо за ответ!
А есть ли еще какие-нибудь методики? PsExec не в счет.
Хотелось бы реализовать возможность удаленного запуска программы без создания задания.

Iska 01-05-2013 03:55 2142660

reliter, у Василия Гусева (PowerShell и другие скрипты | Get-Command | Out-Blog) есть хорошая статья на эту тему: Семь способов лениться - № 04, 2009 | Windows IT Pro | Издательство «Открытые системы» (в блоге тоже есть, но частями).

Iska 01-05-2013 10:48 2142730

reliter, перечитал последние посты и решил уточнить пост #2: не получится создать именно интерактивный процесс, дающий доступ зарегистрированному на удалённой рабочей станции пользователю к его графическому/консольному интерфейсу. За сим исключением всё прочее работает: процесс можно удалённо запускать, следить за ним, прерывать его работу и т.п.

reliter 01-05-2013 15:15 2142840

Спасибо еще раз!
В принципе лучше PsExec, от которого хотелось изначально отказаться по некоторым причинам, после всех попыток ничего не нашлось. На удаленной машине приложение с GUI полноценно запустилось после установки ключа /s и указании конкретного номера сессии, где надо все запустить.
Есть еще проект RemCom, но он не умеет запускать прогу в конкретную сессию.

Iska 01-05-2013 18:31 2142921

Цитата:

Цитата reliter
В принципе лучше PsExec, от которого хотелось изначально отказаться по некоторым причинам, после всех попыток ничего не нашлось. На удаленной машине приложение с GUI полноценно запустилось после установки ключа /s и указании конкретного номера сессии, где надо все запустить. »

reliter, фактически, PsExec использует при этом то же самое проксирование, описанное в статье выше, разве что сам умеет (при наличии у пользователя прав) себя «клонировать» на удалённую машину, исполнить эту копию и установить канал связи с «родителем».

А поинтересоваться можно — зачем Вам демонстрация GUI удалённому зарегистрированному пользователю?

reliter 04-05-2013 11:59 2144222

Да, конечно, можно!
Это нужно для того, чтобы пользователь мог воспользоваться чатом в автоматически запускающемся сервере на его машине при помощи PsExec.

Loveц 24-10-2013 15:50 2240313

Цитата:

Цитата reliter
На удаленной машине приложение с GUI полноценно запустилось после установки ключа /s и указании конкретного номера сессии, где надо все запустить. »

Блин! А самое то важное?? Где взять этот "номер сессии"?? По учеткой system он процесс запускает, а не под пользователем....

vombat2 28-12-2019 06:54 2902607

Цитата:

Цитата Loveц
По учеткой system он процесс запускает, а не под пользователем.... »

psexec -i "номер сессии" запускает процесс в заданной сессии. Пробовал применить эту опцию для запуска программ с повышенными правами из планировщика - фиг, т.е. прога запускается, но появляется некое подобие окна..


Время: 07:43.

Время: 07:43.
© OSzone.net 2001-