AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Ein paar Fragen zu Diensten unter Delphi...
Thema durchsuchen
Ansicht
Themen-Optionen

Ein paar Fragen zu Diensten unter Delphi...

Offene Frage von "Kedariodakon"
Ein Thema von Kedariodakon · begonnen am 19. Sep 2007 · letzter Beitrag vom 19. Sep 2007
Antwort Antwort
Benutzerbild von Kedariodakon
Kedariodakon

Registriert seit: 10. Sep 2004
Ort: Mönchengladbach
833 Beiträge
 
Delphi 7 Enterprise
 
#1

Ein paar Fragen zu Diensten unter Delphi...

  Alt 19. Sep 2007, 02:07
Ok ich wollte jetzt mal nicht 20 Threads erstellen für die Grundsätzlichen Fragen die ich habe.

Ich biun dabei ein Dienst zu schreiben (abgeleitet von TService)...

Da sind mir nun ein paar Sachen untergekommen, die ich noch nicht ganz klären konnte.
  • Wie Stope, Pausiere ich einen Dienst im TService? (z.b. Wenn ein Fehler bei der Ausführung passiert)
  • Wenn ich mir mit Delphi-Referenz durchsuchenTService.LogMessage was protokolliere steht im Eventlog immer:
    Zitat:
    Beschreibung:
    Die Beschreibung der Ereigniskennung ( 0 ) in ( QwSolImportService ) wurde nicht gefunden. Der lokale Computer verfügt nicht über die zum Anzeigen der Meldungen von einem Remotecomputer erforderlichen Registrierungsinformationen oder DLL-Meldungsdateien. Möglicherweise müssen Sie das Flag /AUXSOURCE= zum Ermitteln der Beschreibung verwenden. Weitere Informationen stehen in Hilfe und Support. Ereignisinformationen:
    Datenbank-Verbindungsversuch: "1" NICHT war erfolgreich.
    im Grunde interessiert mich ja nur der untere Teil (nicht unterstrichen), was kann ich tun, damit der Obere Teil (unterstrichen nichtmehr kommt? Was meint Windows mit Beschreibungen zur Ereignisskennung? Wo hinterlege ich die?
  • Wie kann ich ein globales Exceptionhandling einbauen? (Falls mal Fehler auftreten, die z.b. einen Dienstneustart verlangen weil sie schwerwiegend sind...)

Bye Christian
Christian
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#2

Re: Ein paar Fragen zu Diensten unter Delphi...

  Alt 19. Sep 2007, 07:13
zum Starten und Stoppen gibt es soweit ich mich erinnere Methoden wie DoStop etc.
Wenn ich deine Beschreibung jedoch so durchlese bin ich der Meinung das du falsch an die Sache heran gehst.
Welcher Fehler könnte so schwerwiegend sein das ein Programm/Dienst neu gestartet werden muss? Wenn du die Funktionalität deines Dienstes in einer eigenen Klasse ordentlich kapselst sollte es doch reichen diese Objectinstanz einfach frei zu geben und eine neue anzulgen (auch wenn ich der Meinung bin das etwas falsch programmiert ist wenn wegen Fehlern (die eventuell durch Prüfungen vermeidbar sind) alles neu erzeugt werden muss)
Und global Fehler abfangen. Gibt es kein Application.Exception bei Verwendung von TService (auch hier denke ich ist das der falsche Weg)?

Um was für eine Art Fehler geht es? Vielleicht findet sich ja eine bessere Lösung.
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#3

Re: Ein paar Fragen zu Diensten unter Delphi...

  Alt 19. Sep 2007, 10:02
Zu dem Eintrag im Ereignisprotokoll: Du hast keine Beschreibung zu den MessageIDs angelegt. Siehe dazu: http://www.michael-puff.de/Developer...ortEvent.shtml
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von Kedariodakon
Kedariodakon

Registriert seit: 10. Sep 2004
Ort: Mönchengladbach
833 Beiträge
 
Delphi 7 Enterprise
 
#4

Re: Ein paar Fragen zu Diensten unter Delphi...

  Alt 19. Sep 2007, 10:12
Zitat von SirThornberry:
zum Starten und Stoppen gibt es soweit ich mich erinnere Methoden wie DoStop etc.
Ah danke, die hab ich glatt übersehen.

Zitat von SirThornberry:
Wenn ich deine Beschreibung jedoch so durchlese bin ich der Meinung das du falsch an die Sache heran gehst.
Welcher Fehler könnte so schwerwiegend sein das ein Programm/Dienst neu gestartet werden muss?
Gute Frage, das kann ich dir nicht beantworten, weiß aber aus erfahrung das das viele der Dienste machen...

Zitat von SirThornberry:
Wenn du die Funktionalität deines Dienstes in einer eigenen Klasse ordentlich kapselst sollte es doch reichen diese Objectinstanz einfach frei zu geben und eine neue anzulgen (auch wenn ich der Meinung bin das etwas falsch programmiert ist wenn wegen Fehlern (die eventuell durch Prüfungen vermeidbar sind) alles neu erzeugt werden muss)
Nun, wenn man Fremdsource und Komponenten ohne Source arbeitet, bleibt einen aber nicht viel übrich, dass hat man dann einfach nicht in der Hand...

Zitat von SirThornberry:
Und global Fehler abfangen. Gibt es kein Application.Exception bei Verwendung von TService (auch hier denke ich ist das der falsche Weg)?
Um was für eine Art Fehler geht es? Vielleicht findet sich ja eine bessere Lösung.
Nunja, man sollte immer auf das unmögliche gefasst sein, es kann immer mal irgendwo ein Fehler versteckt sein, daher auch die Frage bezüglich des globalen Exception-Handlings.
Mit der Fehler-Zeile allein im Eventlog kann man meist niemanden helfen, daher würd ich unbehandelte Exceptions im Dienst gern abfangen können und erweitert protokollieren.


Zitat von Luckie:
Zu dem Eintrag im Ereignisprotokoll: Du hast keine Beschreibung zu den MessageIDs angelegt. Siehe dazu: http://www.michael-puff.de/Developer...ortEvent.shtml
Danke Lucky das hat schonmal geholfen, werd ich mich gleich mal mit beschäftigen.

Bye Christian
Christian
  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 06:43 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz