![]() |
Erstellen von PDF aus Service funktioniert nicht
Hallo allerseits,
ich hätte da ein kleines Problem... Ein Service (TService) ruft ein Modul auf, welches ein PDF generieren soll. Der Aufruf des Moduls erfolgt aus dem Service über ShellExecuteEx(). Beim Aufruf des Moduls läuft es dann in einen Timeout. Das Modul startet und initialisiert sich, was über Logfiles die es selbst schreibt nachvollzogen werden kann. Grundsätzlich stimmen alle Pfade, das Modul funktioniert über die Kommandozeile aufgerufen für sich korrekt. Auch wenn der Service als VCL-Anwendung kompiliert ist funktioniert der Aufruf des Moduls daraus korrekt. Betriebssystem ist Windows Server 2019 Standard. Der Service läuft unter dem Systemkonto, der Datenaustausch zwischen Dienst und Desktop ist zugelassen. Ein Drucker ist installiert- In TService wurde die Eigenschaft interactiv auf true gesetzt. Das Modul selbst ist eine VCL-Anwendung. Hat jemand eine Idee in welche Richtung ich nach dem Fehler suchen kann? Viele Grüße Udo |
AW: Erstellen von PDF aus Service funktioniert nicht
Zitat:
Das geht doch schon seit Windows Vista nicht mehr. |
AW: Erstellen von PDF aus Service funktioniert nicht
Ja, aber es muss doch möglich sein, aus einem Service heraus ein PDF zu generieren?
|
AW: Erstellen von PDF aus Service funktioniert nicht
Zitat:
Aber es gibt ja nicht nur einen Weg mit "PDF erstellen". D.h. irgendwo bei deinem Ablauf Zitat:
Kommt im programm irgendeine MessageBox. |
AW: Erstellen von PDF aus Service funktioniert nicht
Nein, eine Messagebox ist zwar nicht vorgesehen aber eine zum Test eingebaute erscheint nicht.
Was ja wohl auch seit Vista nichtmehr funktionieren soll... |
AW: Erstellen von PDF aus Service funktioniert nicht
Wie wäre denn eine korrekte vorgehensweise unter einer aktuellen Windows Version?
Unter einer älteren Serverversion (Small Buisiness Server 2011) funktionierte unser System so noch korrekt, aber irgendwann muss ja auch mal der Server ein Update erfahren. |
AW: Erstellen von PDF aus Service funktioniert nicht
Hmm..
Das geht schon, ist nur aufwändig. Die Installation von Druckern ist in einem 'System'-Konto nicht möglich, da dieses kein Profil hat. Somit musst Du einen eigenen User anlegen, diesem den Drucker hinzufügen und dann deinen Dienst mit dessen Benutzeranmeldung laufen lassen. Eventuell musst Du dann nur diesem noch diverse Windows-Zugriffsrechte geben, je nachdem was der Dienst macht. Dann sind sogar Netzwerk-Drucker möglich... Bedenke, dass seit Vista keine 'Fensterkommunikation' zwischen Diensten und User mehr vorgesehen sind! Somit werden auch keine Meldungsfenster oder ähnliches mehr angezeigt. Deshalb sollten alle Dienste grundsätzlich Fensterlos sein! |
AW: Erstellen von PDF aus Service funktioniert nicht
Die PDF-Erstellung läuft über einen PDF-Druckertreiber?
Wieso nicht direkt ein (Delphi-)Komponenten nehmen, die direkt PDFs erstellt? |
AW: Erstellen von PDF aus Service funktioniert nicht
Ich habe jetzt nochmal einen neuen User angelegt und den Dienst unter diesem gestartet.
Immer noch keine PDF-Ausgabe möglich. |
AW: Erstellen von PDF aus Service funktioniert nicht
Zitat:
Verwendet wir in diesem Modul die Komponente
Delphi-Quellcode:
AllInTheBox
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 02: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