Service -> in eine Konsole schreiben
Aloha!
Ich habe eine Service Anwendung. Von der aus möchte ich nun die Konsole starten, und Nachrichten reinschreiben (praktisch als Verbose Output). Das sollte doch mit einem interaktiven Service möglich sein oder? Allein... wie? |
Re: Service -> in eine Konsole schreiben
Du musst einfach den Service mit ausreichenden Rechten ausführen, bzw. dem Service erlauben, dass es "auf den Desktop zugreift" (so heißt die Einstellung).
Das musst du aber bei der Installation des Services vornehmen, da das Windows-Einstellungen sind. Grüße Faux |
Re: Service -> in eine Konsole schreiben
Zitat:
Endlich hat es MS geschafft, die Leute zu überzeugen, daß interaktive Dienste böse sind (wegen Shatter Attack Interactive Service), da kommt jemand aus der DP und empfiehlt diese Technik :shock: Der korrekte Weg ist es, sich über die ACLs des Desktops und der interaktiven Fensterstation Zugriff zu verschaffen und maximal interaktive Elemente in einem eingeschränkten Kontext ([msdn]Client Impersonation [Security][/msdn]) laufen zu lassen. |
Re: Service -> in eine Konsole schreiben
Zitat:
|
Re: Service -> in eine Konsole schreiben
Zitat:
Immer auf die Kleinen... :mrgreen: |
Re: Service -> in eine Konsole schreiben
Zitat:
Zitat:
|
Re: Service -> in eine Konsole schreiben
Also ich hab das jetzt folgendermaßen gelöst:
Ich weise dem Service mit
Delphi-Quellcode:
eine Konsole zu. In die kann ich dann via
AllocConsole
Delphi-Quellcode:
Sachen schreiben. Das funktioniert auch bestens. Allerdings:
writeln
1. Wenn man die Konsole beendet, endet auch der Service. Warum ist dem so? 2. Ist das eine saubere / akzeptable Lösung? |
Re: Service -> in eine Konsole schreiben
Was ist denn dein Ziel? Beschreibe mal nicht wie du es machen willst, sondern was dein Ziel ist ;)
|
Re: Service -> in eine Konsole schreiben
Zitat:
|
Re: Service -> in eine Konsole schreiben
Wie wäre es dann, wenn du dir der Einfachheit halber DebugView besorgst und in deiner boot.ini die DEBUG-Option aktivierst, so daß du die API-Funktion OutputDebugString benutzen kannst? So kannst du live deinen Service beobachten, ohne hier Kopfstände machen zu müssen.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:38 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