Hallo zusammen
Ich versuche auf eine
dll zuzugreifen, mit dieser kann ich auf Tags(Variablen) zugreifen. Diese Tags liegen auf einem DXS-Server.
Dies funktioniert auch:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
TagsObj := TTags.create(self);
TagsObj.Connect;
Control_0 := TagsObj.DefaultInterface.CreateInteger('Control[0]', 16, 0);
Control_0.Value := 4000;
end;
Jetzt möchte ich aber das ganze als Service laufen lassen...
Delphi-Quellcode:
procedure TService1.ServiceExecute(Sender: TService);
begin
TagsObj := TTags.create(self);
TagsObj.Connect;
Control_0 := TagsObj.DefaultInterface.CreateInteger('Control[0]', 16, 0);
Control_0.Value := 4000;
end;
Hier kommt aber immer das Problem:
Kurz nach dem Start des Service wird die Fehlermeldung:
Zitat:
Dienst "Service1" wurde auf "Lokaler Computer" gestartet und dann angehalten. Einige Dienste werden automaitsch angehalten, wenn sie sich im Leerlauf befindet, wie z.B. Leistungsprotokoll- und Alarmdienste.
anzeigt.
Aus dieser wird ich aber nicht wirklich Schlau, denn diese zeigt es mir bei allen möglichen Fehlern in einem Service an.
Da der Code schlussendlich gleich ist, kann es nur daran liegen, dass ich beim Befehl:
TagsObj := TTags.create(self);
liegt. Denn hier ist der unterschied das ich beim Service den Service als self weitergebe und bei der Formanwendung die Form.
Weiss jemand was ich dann beim Service anders mitgeben soll antstatt "self"? Oder ist es ein ganz anderes Problem?