Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 19.08.2012, 18:52   #11
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию

Цитата:
Это невозможно даже теоретически.
Позволю не согласится. csrss.exe и winlogon.exe работают вне сессии. Но сделать так же, любой антивирус просто не даст.
Человек_Борща вне форума Ответить с цитированием
Старый 19.08.2012, 19:10   #12
Shouldercannon
Участник клуба Подтвердите свой е-майл
 
Аватар для Shouldercannon
 
Регистрация: 26.01.2008
Сообщений: 1,897
По умолчанию

Цитата:
Сообщение от GunSmoker Посмотреть сообщение
Ну здравствуйте. Team Viewer работает из под Local System (NT AUTHORITY\SYSTEM).
А для чего ему тогда своя служба (см. прикреплённые файлы)?
Цитата:
Сообщение от GunSmoker Посмотреть сообщение
Хорошо бы указать почему, иначе тебе предложат другое решение, не подходящее по тем же приминам.
Теперь и от примера для планировщика не откажусь, но опять же без входа юзера в систему.
Изображения
Тип файла: gif TV.gif (3.5 Кб, 76 просмотров)
Тип файла: gif TV2.gif (53.1 Кб, 139 просмотров)
Shouldercannon вне форума Ответить с цитированием
Старый 19.08.2012, 19:20   #13
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
но опять же без входа юзера в систему.
Любая служба (даже та, пример которой я дал) сможет запустится легко до того как пользователь войдет. Секрет не в службе а в ее параметрах запуска, где и указывается системная учетка, с которой служба войдет.
Так что не слушай GunSmoker-a, он побуквоедствовал.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 19.08.2012, 20:02   #14
Shouldercannon
Участник клуба Подтвердите свой е-майл
 
Аватар для Shouldercannon
 
Регистрация: 26.01.2008
Сообщений: 1,897
По умолчанию

Stilet
Решил опробовать ваш пример, но при запуске службы получил предупреждение и при этом служба запустила программу, но видно её только как процесс, а формы нет.
Код:
ShellExecute(GetForegroundWindow, 'open', 'C:\Project1.exe', nil, nil, SW_SHOWNORMAL);
Изображения
Тип файла: gif service.gif (12.6 Кб, 69 просмотров)
Shouldercannon вне форума Ответить с цитированием
Старый 19.08.2012, 20:23   #15
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию

Shouldercannon, и правильно. На кой хрен процесс, который ничего не делает?
Сервиссообщает свой статус SCM только 1 раз, и это не правильно.
While not ServiceThread.Terminated do дожно быть.

ReportStatus должно происходит в 2 раза чаще чем SCM опрашивает вас(WaitTime вроде).

Последний раз редактировалось Человек_Борща; 19.08.2012 в 20:25.
Человек_Борща вне форума Ответить с цитированием
Старый 19.08.2012, 21:05   #16
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
На кой хрен процесс, который ничего не делает?
Я этот пример делал только для запуска сторонней проги до входа юзера, после служба как-бы не нужна была
Цитата:
но видно её только как процесс
Дык а какая форма, у тебя до входа юзера фактически то и рабместа нет.
Я запускал программу, которая "регилась" в трей, и оттуда при необходимости вызывалась кликом ее форма.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 19.08.2012, 21:42   #17
vovken1997
Дружелюбный
Форумчанин
 
Аватар для vovken1997
 
Регистрация: 23.02.2012
Сообщений: 692
По умолчанию

Насчёт входа до авторизации. Это более чем возможно, но для этого надо модернизировать стандартную MSGina.dll которая находится в C:\windows\system32 как правило. В семёрке нужен запуск от админа!!! Гуглите, помню, была хорошая статья про создание своей MSGINA.dll с исходниками, но только на С.
-==ЛЮБОЕ ЗНАНИЕ ДОСТИГАЕТСЯ ТОЛЬКО СОБСТВЕННЫМИ УСИЛИЯМИ!!!==-
vovken1997 вне форума Ответить с цитированием
Старый 20.08.2012, 01:37   #18
GunSmoker
Старожил
 
Регистрация: 13.08.2009
Сообщений: 2,581
По умолчанию

Цитата:
Позволю не согласится. csrss.exe и winlogon.exe работают вне сессии. Но сделать так же, любой антивирус просто не даст.
Здесь есть целых три ошибки:
1. Сессия и учётная запись - разные вещи.
2. csrss.exe и winlogon.exe имеют и сессию и учётку (0 и LocalSystem соответственно).
3. Антивирус здесь совсем не при чём.

Цитата:
А для чего ему тогда своя служба (см. прикреплённые файлы)?
Вот именно она под LocalSystem и работает.

Цитата:
Теперь и от примера для планировщика не откажусь, но опять же без входа юзера в систему.
Хорошо бы:
а). Пояснить что ты понимаешь под "без входа юзера в систему". Потому что то, что ты сказал в вопросе ("при старте ОС без авторизации") это совсем другое.
б). Кратко пояснить, чего вообще хотим делать.

Цитата:
Так что не слушай GunSmoker-a, он побуквоедствовал.
Я может не в курсе предыстории вопроса, но именно то, что указано в самом вопросе - не возможно. Любой процесс в Windows (даже самый низкоуровневый системный) всегда ассоциируется с описателем владельца и первичной группой, т.е. нельзя запустить программу вне контекста какой-либо учётной записи. Другое дело, что эта учётная запись не обязана быть интерактивной.

Поэтому хорошо бы автору темы нормально описать, что он хочет сделать. А то у него, то "без авторизации", то "без пользователя", но при этом почему-то с формами. Причём описать бы, не в виде "хочу запустить без входа", потому что не может быть у него такой задачи. Задача - это, скажем, "необходима программа фоновой отправки отчётов", а "хочу запустить без входа" - это только решение частной проблемы, одно из.
Опытный программист на C++ легко решает любые не существующие в Паскале проблемы.
GunSmoker вне форума Ответить с цитированием
Старый 20.08.2012, 11:47   #19
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
А то у него, то "без авторизации", то "без пользователя"
Имелось ввиду "До открытия сеанса каким либо пользователем", Это и так понятно исходя из той невозможности, о которой ты говоришь.
Цитата:
но при этом почему-то с формами.
Это нужно было автору указать еще в топе темы.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 20.08.2012, 12:27   #20
GunSmoker
Старожил
 
Регистрация: 13.08.2009
Сообщений: 2,581
По умолчанию

Другие ему и Gina предлагают, и ключ реестра Run. Так что не так тут всё очевидно.
Опытный программист на C++ легко решает любые не существующие в Паскале проблемы.
GunSmoker вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
автозапуск при старте ос и сворачивание в трей TotKtoNado Общие вопросы Delphi 1 03.07.2011 22:38
Divizion by zero - при старте программы trigger Помощь студентам 1 23.02.2011 18:20
прорисовка формы при старте designer999 Общие вопросы Delphi 3 12.11.2010 01:33
При старте програмы KoBRaAndrey Общие вопросы Delphi 9 04.10.2009 15:46
создание dll при старте приложения и удаление при завершении TyoshA Общие вопросы Delphi 7 13.07.2009 13:56