Мастера DELPHI, Delphi programming community Рейтинг@Mail.ru Титульная страница Поиск, карта сайта Написать письмо 
| Новости |
Новости сайта
Поиск |
Поиск по лучшим сайтам о Delphi
FAQ |
Огромная база часто задаваемых вопросов и, конечно же, ответы к ним ;)
Статьи |
Подборка статей на самые разные темы. Все о DELPHI
Книги |
Новинки книжного рынка
Новости VCL
Обзор свежих компонент со всего мира, по-русски!
|
| Форумы
Здесь вы можете задать свой вопрос и наверняка получите ответ
| ЧАТ |
Место для общения :)
Орешник
Коллекция курьезных вопросов из форумов
Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / rsdn.org

 
Чтобы не потерять эту дискуссию, сделайте закладку « предыдущая ветвь | форум | следующая ветвь »

Можно ли как-то из службы запустить приложение в акт. сессии?


Дмитрий С2   (02.03.22 11:48

Можно ли как-то из службы запустить приложение в активной сессии пользователя и отследить ввод/вывод?


Дмитрий С2   (02.03.22 11:49[1]

Аналогичный вопрос сразу: можно создать экземпляр ком-класса в суррогатном процессе в сессии пользователя из службы?


Rouse_ ©   (02.03.22 22:10[2]


> Можно ли как-то из службы запустить приложение в активной
> сессии пользователя

https://rouse.drkb.ru/winapi.php#servicenotifyer

ну а отследить по такому же принципу как не из службы.


Дмитрий С2   (03.03.22 11:50[3]

Спасибо! Буду пробовать.

Встречал ещё пример с помощью CreateRemoteThread в эксплорер залогиненого пользователя =)


Rouse_ ©   (03.03.22 14:56[4]

Это не штатный способ, CreateRemoteThread это сугубо отладочный механизм.


Дмитрий С2   (14.03.22 17:09[5]

Большое спасибо.

А чего-нибудь вроде CreateComObjectAsUser нет? Только через запуск процесса делать?


Дмитрий С2   (14.03.22 17:22[6]


>
> https://rouse.drkb.ru/winapi.php#servicenotifyer

Благодаря твоему примеру нашел вот такой:
https://stackoverflow.com/questions/57078569/launching-an-interactive-user-process-from-a-local-system-process-get-error-co

Вот такой фигней я занимаюсь, Сань )


Rouse_ ©   (14.03.22 17:41[7]


> Дмитрий С2   (14.03.22 17:09) [5]
> Большое спасибо.
>
> А чего-нибудь вроде CreateComObjectAsUser нет? Только через
> запуск процесса делать?

C СОМ не эксперементировал, так бы подсказал.


Дмитрий С2   (16.03.22 17:37[8]

Спасибо еще раз. Всё получилось.

Только вместо WTSGetActiveConsoleSessionId я перебирал все активные сессии, и если она такая одна - то выполнял в ней (чтобы через при подключении по рдп тоже работало).


версия для печати

Написать ответ

Ваше имя (регистрация  E-mail 







Разрешается использование тегов форматирования текста:
<b>жирный</b> <i>наклонный</i> <u>подчеркнутый</u>,
а для выделения текста программ, используйте <code> ... </code>
и не забывайте закрывать теги! </b></i></u></code> :)


Наверх

  Рейтинг@Mail.ru     Титульная страница Поиск, карта сайта Написать письмо