gpt4 book ai didi

delphi - 如何使用 Delphi 调试 Windows 服务?

转载 作者:行者123 更新时间:2023-12-03 14:33:46 30 4
gpt4 key购买 nike

有没有办法用 Delphi 完全调试 Windows 服务?

最佳答案

这实际上很简单。只需使用标准 DEBUG 编译器指令将服务作为控制台应用程序而不是服务启动。

program MyServiceApp;

{$ifdef DEBUG}
{$APPTYPE CONSOLE}
{$endif}

uses
System.SysUtils,

[..]

begin
{$ifdef DEBUG}
try
// In debug mode the server acts as a console application.
WriteLn('MyServiceApp DEBUG mode. Press enter to exit.');

// Create the TService descendant manually.
ServerContainer1 := TServerContainer.Create(nil);

// Simulate service start.
ServerContainer1.ServiceStart(ServerContainer1, MyDummyBoolean);

// Keep the console box running (ServerContainer1 code runs in the background)
ReadLn;

// On exit, destroy the service object.
FreeAndNil(ServerContainer1);
except
on E: Exception do
begin
Writeln(E.ClassName, ': ', E.Message);
WriteLn('Press enter to exit.');
ReadLn;
end;
end;
{$else}
// Run as a true windows service (release).
if not Application.DelayInitialize or Application.Installing then
Application.Initialize;
Application.CreateForm(TServerContainer, ServerContainer1);
Application.Run;
{$endif}
end.

关于delphi - 如何使用 Delphi 调试 Windows 服务?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2884631/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com