AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

IdTCPServer in Dienstanwendung

Ein Thema von TUX_der_Pinguin · begonnen am 26. Sep 2012 · letzter Beitrag vom 26. Sep 2012
Antwort Antwort
TUX_der_Pinguin

Registriert seit: 1. Jun 2005
Ort: Anholt (NRW)
609 Beiträge
 
Delphi 11 Alexandria
 
#1

AW: IdTCPServer in Dienstanwendung

  Alt 26. Sep 2012, 13:05
Hi Bummi,

also dein Beispiel Dienst läuft. Der Unterschied zwischen deinem und meinem Dienst liegt darin
das ich den TCP Server "starte" und "beende" im OnCreate und OnDestroy und du im OnStart und OnStop.

Ich bin gerade etwas verwirrt, warum das bei mir nicht klappt.

Zitat:
2012-09-26 13:48:58.179: GET / HTTP/1.1
2012-09-26 13:48:58.194: Accept: image/gif, image/jpeg, image/pjpeg, image/pjpeg, application/x-shockwave-flash, application/x-ms-application, application/x-ms-xbap, application/vnd.ms-xpsdocument, application/xaml+xml, */*
2012-09-26 13:48:58.210: Accept-Language: de
2012-09-26 13:48:58.225: User-Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; .NET4.0C; .NET4.0E)
2012-09-26 13:48:58.585: Accept-Encoding: gzip, deflate
2012-09-26 13:48:58.600: Host: 127.0.0.1:60000
2012-09-26 13:48:58.616: Connection: Keep-Alive
2012-09-26 13:48:58.632:
2012-09-26 13:49:12.944: Not Connected
  Mit Zitat antworten Zitat
TUX_der_Pinguin

Registriert seit: 1. Jun 2005
Ort: Anholt (NRW)
609 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: IdTCPServer in Dienstanwendung

  Alt 26. Sep 2012, 13:44
So ich habe das ganze jetzt geändert ob das jetzt "Richtig" ist weiß ich nicht.

Im OnCreate des Service wird der TCP Server vorbereitet
Im OnStart des Service wird der TCP Server gestartet (Active := True)
Im OnStop des Service wird der TCP Server beendet (Active := False)

In den Ereignissen OnPause und OnContinue wird der TCP Server ebenfalls beendet bzw.
gestartet.

Wie gesagt ich habe keinen Schimmer ob das alles korrekt ist, aber es funktioniert.
  Mit Zitat antworten Zitat
Benutzerbild von Bummi
Bummi

Registriert seit: 15. Jun 2010
Ort: Augsburg Bayern Süddeutschland
3.470 Beiträge
 
Delphi XE3 Enterprise
 
#3

AW: IdTCPServer in Dienstanwendung

  Alt 26. Sep 2012, 13:48
Hätte ich genauso umgesetzt ...
Thomas Wassermann H₂♂
Das Problem steckt meistens zwischen den Ohren
DRY DRY KISS
H₂ (wenn bei meinen Snipplets nichts anderes angegeben ist Lizenz: WTFPL)
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#4

AW: IdTCPServer in Dienstanwendung

  Alt 26. Sep 2012, 14:11
So ich habe das ganze jetzt geändert ob das jetzt "Richtig" ist weiß ich nicht.

Im OnCreate des Service wird der TCP Server vorbereitet
Im OnStart des Service wird der TCP Server gestartet (Active := True)
Im OnStop des Service wird der TCP Server beendet (Active := False)

In den Ereignissen OnPause und OnContinue wird der TCP Server ebenfalls beendet bzw.
gestartet.

Wie gesagt ich habe keinen Schimmer ob das alles korrekt ist, aber es funktioniert.
Kann man zwar so machen und sollte auch keine Probleme ergeben, aber der TCP Server wird auch dann schon vorbereitet, wenn das absolut nicht nötig ist ... und evtl. dadurch sogar zu Fehlern kommen könnte.

Eine Service-Instanz wird auch erzeugt, wenn der Dienst installiert bzw. deinstalliert wird.

Im OnStart die Instanz für den Server erzeugen, vorbereiten und Active auf True
Im OnPause Active auf False (optional)
Im OnContinue Active auf True (optional)
Im OnStop die Instanz für den Server freigeben (FreeAndNil)
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
TUX_der_Pinguin

Registriert seit: 1. Jun 2005
Ort: Anholt (NRW)
609 Beiträge
 
Delphi 11 Alexandria
 
#5

AW: IdTCPServer in Dienstanwendung

  Alt 26. Sep 2012, 14:20
Eine Service-Instanz wird auch erzeugt, wenn der Dienst installiert bzw. deinstalliert wird.
Das war mir auch schon aufgefallen und habe mich darüber gewundert.

Ich glaube ich bekomme das jetzt hin, mit eurer Hilfe, danke.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:45 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz