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

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

Автозапуск приложения с админскими правами


RhinoFC ©   (10.08.18 10:02

Здравствуйте, уважаемые.
Вопрос, может быть, не совсем по разработке, но наверняка кроме программистов никто не знает.
Итак.
Разработал программу, которая должна висеть в системном трэе. Причём не просто висеть, а автоматически запускаться. При этом с правами администратора из-под любого пользователя (в т.ч. доменного), т.к. работает с реестром (HKLM) и папкой ProgramFiles.
И вот тут весьма неожиданный затык. Даже не знал, что сделать это окажется так сложно. Ничего не получается.
Делал:
1. Автозагрузка либо реестр (HKLM\Software\Microsoft\CurrentVersion\Run). Программа запускается, в трэе появляется, но доступа к реестру нет. Запуск программы с правами администратора не помогает. Хотя помогает запуск от имени конкретного пользователя (меня, т.к. я админ на своём компе)
2. Через планировщик Windows. Указываю там запуск с админскими правами и старт при загрузке системы либо при входе в Windows. Программа запускается (видна в процессах), но в трэе отсутствует. Соответственно окно не вызвать. Видел советы, что необходимо указать задержку запуска. Пробовал - не помогло.
3. Написал службу. Думал, она запустится при старте системы, и уже запустит мою прогу. Также программа есть в процессах, но нету в трее. Настройка "разрешить взаимодействие с рабочим столом" не помогает.

И вот ну совсем не могу понять, как сделать. Ведь висят же проги в трэе, явно с админскими правами работают независимо от пользователя. Запускаются через реестр или службами (или ещё как).
То-ли я неправильно что-то реализовал, то-ли не могу допереть как правильно организовать её запуск, то-ли просто лыжи не едут...
Помогите, кто знает, а то я уже весь инет облазил, а толку ноль.


Eraser ©   (10.08.18 14:22[1]


> RhinoFC ©   (10.08.18 10:02) 

нужно писать сервис, который будет, в свою очередь, запускать приложение, весящее в трее в нужной терминальной сессии.


RhinoFC ©   (10.08.18 16:29[2]

Собственно я сервис как раз и написал, который это приложение запускает. Только вот на счёт терминальной сессии не знаю ничего. Можно подробнее об этом?


Eraser ©   (11.08.18 13:17[3]

https://social.msdn.microsoft.com/Forums/windowsdesktop/en-US/31bfa13d-982b-4b1a-bff3-2761ade5214f/calling-createprocessasuser-from-service?forum=windowssecurity


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

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

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







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


Наверх

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