Вниз
Скачать: CL | DM;

SC_HANDLE   Найти похожие ветки 

← →
TerminalHead   (2005-08-03 20:34) [0]

Помогите пожалуйста исправить: пытаюсь использовать вот эту функцию, но получаю очень много ошибок:

function CreateNTService(ExecutablePath, ServiceName: string): boolean;
var
 hNewService, hSCMgr: SC_HANDLE;
 // Rights: DWORD;
 FuncRetVal: Boolean;
begin
 FuncRetVal := False;
 hSCMgr := OpenSCManager(nil, nil, SC_MANAGER_CREATE_SERVICE);
 if (hSCMgr <> 0) then
 begin
   //Custom service access rights may be built here
   //we use GENERIC_EXECUTE which is combination of
   //STANDARD_RIGHTS_EXECUTE, SERVICE_START, SERVICE_STOP,
   //SERVICE_PAUSE_CONTINUE, and SERVICE_USER_DEFINED_CONTROL
   //You can create own rights and use them as shown in the
   //commented line below.

   //Rights := STANDARD_RIGHTS_REQUIRED or SERVICE_START or SERVICE_STOP
   // or SERVICE_QUERY_STATUS or SERVICE_PAUSE_CONTINUE or
   // SERVICE_INTERROGATE;

   hNewService := CreateService(hSCMgr, PChar(ServiceName), PChar(ServiceName),
     STANDARD_RIGHTS_REQUIRED, SERVICE_WIN32_OWN_PROCESS,
     SERVICE_DEMAND_START, SERVICE_ERROR_NORMAL,
     PChar(ExecutablePath), nil, nil, nil, nil, nil);
   CloseServiceHandle(hSCMgr);
   if (hNewService <> 0) then
     FuncRetVal := true
   else
     FuncRetVal := false;
 end;
 CreateNTService := FuncRetVal;
end;

А вот и ошибки:

[Error] Unit1.pas(45): Undeclared identifier: "SC_HANDLE"
[Error] Unit1.pas(50): Undeclared identifier: "OpenSCManager"
[Error] Unit1.pas(50): Undeclared identifier: "SC_MANAGER_CREATE_SERVICE"
[Warning] Unit1.pas(51): Comparing signed and unsigned types - widened both operands
[Error] Unit1.pas(64): Undeclared identifier: "CreateService"
[Error] Unit1.pas(65): Undeclared identifier: "SERVICE_WIN32_OWN_PROCESS"
[Error] Unit1.pas(66): Undeclared identifier: "SERVICE_DEMAND_START"
[Error] Unit1.pas(66): Undeclared identifier: "SERVICE_ERROR_NORMAL"
[Error] Unit1.pas(68): Undeclared identifier: "CloseServiceHandle"
[Warning] Unit1.pas(69): Comparing signed and unsigned types - widened both operands
[Fatal Error] Project1.dpr(5): Could not compile used unit "Unit1.pas"


← →
begin...end ©   (2005-08-03 20:57) [1]

Добавьте в список uses модуль WinSvc. И все ошибки сразу исчезнут.


← →
TerminalHead   (2005-08-03 21:27) [2]

Спасибо !!!


← →
TerminalHead   (2005-08-03 21:40) [3]

Вот пытаюсь разобратся в этом: http://delphiworld.narod.ru/base/services_work.html
Но пока что не очень получается, я конечно совершенный ламер и в дельфи почти ничего не смыслю, в общем то как и в других языка програмирования, но мне очень нужно добавить мое приложение в автозагрузку как сервис.
И я был бы очень рад если кто-нибудь смог бы мне помочь это сделать.
На сколько я понял эта функция занимается именно этим, но я так и не понял как сделать чтобы мое приложение попало в автозагрузку сервисом.
Помогите пожалуйста


← →
TerminalHead   (2005-08-03 22:02) [4]

Пока что программа почему-то не запускается
Вроде все ок, но все-равно запускатся при запуске виндов не хочет
Пишу: CreateNTService("c:\Program Files\newservice.exe","New Service");



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.026 c
3-1121170750
Максим
2005-07-12 16:19
2005.08.21
Работа с IBUpdateSQL !


14-1122538370
Choovak
2005-07-28 12:12
2005.08.21
Символы


14-1122457362
NewWonder
2005-07-27 13:42
2005.08.21
Делюсь большой радостью!


3-1121244254
Ирина
2005-07-13 12:44
2005.08.21
DBEdit


14-1122653780
Alexander Panov
2005-07-29 20:16
2005.08.21
Фото от 24.06.2005г.




   Наверх