Форум: "Основная";
Текущий архив: 2005.08.21;
Скачать: [xml.tar.bz2];
Вниз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 вся ветка
Форум: "Основная";
Текущий архив: 2005.08.21;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.041 c