Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2004.09.05;
Скачать: [xml.tar.bz2];

Вниз

Как можно программно перестартовать сервис?   Найти похожие ветки 

 
sergch   (2004-08-17 12:44) [0]

Возможно-ли это?


 
Digitman ©   (2004-08-17 12:47) [1]

см.

OpenSCManager
OpenService
ControlService
StartService


 
Ega23 ©   (2004-08-17 12:47) [2]

Да.


 
Ega23 ©   (2004-08-17 12:50) [3]


ProxAPI UPRStatus __stdcall UPRInstallDriver( LPSTR path,
   unsigned uBaseAddr, unsigned uCtrlAddr )
{
SC_HANDLE hSCMan;
SC_HANDLE hServ;

UPRStatus Status = UPRCheckDriverStatus();
if (Status and UPRStatusError) return Status;
if (Status and UPRStatusInstalled)
{
 hSCMan = OpenSCManager(NULL, NULL, SC_MANAGER_ALL_ACCESS);
 if(!hSCMan)
  return (UPRStatusErrorSCManager);

 hServ = OpenService(hSCMan, DeviceName,  SERVICE_ALL_ACCESS);
  if(hServ)
  {
   SERVICE_STATUS ServStatus;
   QueryServiceStatus(hServ,&ServStatus);
   if(ServStatus.dwCurrentState == SERVICE_RUNNING )
    ControlService(hServ,SERVICE_CONTROL_STOP, &ServStatus);

   if(!DeleteService(hServ))
   {
    return UPRStatusErrorService;
   }
   else
    if(!CloseServiceHandle(hServ)) return UPRStatusErrorService;
  }
 
}

hServ = CreateService(hSCMan, DeviceName, DeviceName, SERVICE_ALL_ACCESS, SERVICE_KERNEL_DRIVER,
       SERVICE_AUTO_START, SERVICE_ERROR_IGNORE, (LPCTSTR)path, nil, nil,
       (LPCTSTR)"", nil, nil);
if (not hServ) return UPRStatusErrorService;

Status = UPRStartDriver();
return Status;
}




Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2004.09.05;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.045 c
1-1092980126
Optimizator
2004-08-20 09:35
2004.09.05
Проблемы с DBEdit


9-1084638980
G_U_N
2004-05-15 20:36
2004.09.05
PowerDraw


14-1092309182
QuestionX
2004-08-12 15:13
2004.09.05
Трояны. Как бороться ?


3-1092301377
Anthony
2004-08-12 13:02
2004.09.05
SelectAll в DBGridEh


3-1092294860
REA
2004-08-12 11:14
2004.09.05
IB описания полей





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский