Я создал службу Windows в Delphi. Мой код выполняется в ServiceExecute
procedure TMyService.ServiceExecute(Sender: TService);
while not Terminated do
begin
CallSomeProcedure;
Sleep(1000);
ServiceThread.ProcessRequests(false);
end;
end;
К сожалению, я не могу заставить этот код работать. Кажется, я не вызываю процедуру, даже когда отлаживаю.
Код в Myservice.exe выглядит следующим образом.
begin
if not Application.DelayInitialize or Application.Installing then
Application.Initialize;
Application.CreateForm(TMyService, MyService);
Application.Run;
end.
Я могу запустить serviceExecute, если добавлю
MyService.ServiceExecute(nil);
в MyService.exe, однако, если я устанавливаю его как службу, он не работает, так как Application.Run ничего не делает
Не уверен, что я делаю неправильно, но любая помощь будет принята с благодарностью.
Спасибо