HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

Запустить процесс как службу[Какие есть варианты]
  #1  
Старый 07.04.2010, 12:24
cheater_man
Постоянный
Регистрация: 13.11.2009
Сообщений: 437
С нами: 8680278

Репутация: 17
По умолчанию Запустить процесс как службу[Какие есть варианты]

ЯП любой
 
Ответить с цитированием

  #2  
Старый 07.04.2010, 12:35
slesh
Познавший АНТИЧАТ
Регистрация: 05.03.2007
Сообщений: 1,985
С нами: 10097606

Репутация: 3349


По умолчанию

Ну вообще с самого начала нужно писать службу.
Вообще процесс службы отличается от обычного процесса тока небольшими изменениями в коде. А именно: Регистрации функции службы и регистрации функции контроля.
Затем служба создается или через специально созданные функции или через реестр. Первый способ более правильный.
Затем всё запускается через те же функции.

Смотри 5005 статей по делфи
1) написание сервиса:
- Сервисы в Delphi на чистом API
- Написание сервисов Windows NT на WinAPI
2) установка сервиса (программно)
- Инсталляция и удаление сервисов под НТ
3) управление сервисом
- Остановка и запуск сервисов

Если нужно любую прогу запускать, то напиши простенькую службу которая будет запускать твою прогу.

Если ты обычную прогу запустишь как службу, то система может её выкинуть по таймауту, потому что она не зарегает функции службы и контроля.
-----------------------
Еще можно создать службу через реестр. Но винда может не сразу запускать её, а тока после ребута.
-----------------------
А вообще что тебе нужно именно?
- использование контроля?
- использование прав системы?
- просто чтобы был такой типа автозапуск?
- другие вариант?

Последний раз редактировалось slesh; 07.04.2010 в 12:39..
 
Ответить с цитированием

  #3  
Старый 07.04.2010, 13:15
cheater_man
Постоянный
Регистрация: 13.11.2009
Сообщений: 437
С нами: 8680278

Репутация: 17
По умолчанию

Нужно прописать свою прогу в сервис(но не через реестр, а с помощью API), и автозапускать её при старте компа.
 
Ответить с цитированием

  #4  
Старый 07.04.2010, 15:37
Interceptor
Новичок
Регистрация: 06.04.2010
Сообщений: 7
С нами: 8473254

Репутация: 0
По умолчанию

Код:
SC_HANDLE hSCM = ::OpenSCManager( NULL, NULL, SC_MANAGER_ALL_ACCESS );
if( hSCM == NULL )
        return FALSE;

SC_HANDLE hService = ::CreateService(
        hSCM, _T("MyServiceName"), _T("MyServiceName"),
        SERVICE_ALL_ACCESS,   SERVICE_WIN32_OWN_PROCESS,
        SERVICE_AUTO_START, SERVICE_ERROR_NORMAL,
        _T("Path To Executable"), NULL, NULL, NULL, NULL, NULL);

if( hService )
    ::CloseServiceHandle( hService );
if( hSCM )
    ::CloseServiceHandle( hSCM );
 
Ответить с цитированием
Ответ



Предыдущая тема Следующая тема
Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Халявный Интернет (для маленьких) stopxaker Статьи 91 20.04.2010 19:52
Процесс над The Pirate Bay: итоги первой недели jerrri Мировые новости. Обсуждения. 3 27.02.2009 00:24



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.