Hallo,
ich arbeite mit Lazarus unter Windows 7 64-Bit. Ich habe versucht einen 64-Bit Service mit TDaemon zu schreiben.
Dafür habe ich das
Package lazdaemon installiert und dann eine neue "Daemon (Service) application" erstellt. Dann habe ich im Mapper den entsprechenden Daemon hinzugefügt, dieser steht auch auf Enabled. Ich kann den Service auch problemlos installieren.
Wenn ich dann aber versuche diesen zu starten, passiert das zwar laut Diensteverwaltung und ich kann den auch stoppen usw., aber es wird kein Event des Daemon ausgelöst. Testweise habe ich dort eine Logdatei geschrieben, so dass ich weiß, dass die Register-Prozeduren für den Mapper und den Daemon ausgeführt werden, leider aber nicht mehr.
Weder OnStart noch OnStop noch OnExecute werden ausgelöst.
Was muss ich noch machen? Habe ich etwas übersehen?
(Mit echtem Debuggen wird es schwierig, da es einerseits Lazarus und andererseits ein Dienst ist... Das Verbinden mit einem Prozess soll zwar via gdb irgendwie gehen, aber ich habe keine Ahnung ob unter Windows und wenn ja wie.)
Den Daemon anhängen wird wohl nicht viel bringen, da ich ja nur das gemacht habe was ich geschrieben habe.
Crosspost:
http://www.delphi-forum.de/viewtopic.php?t=101556
vielen Dank schon einmal,
schönen Gruß,
Sebastian