Hallo DPler,
ich habe einen Dienst geschrieben der Daten über
TCP empfängt und dann auf verschiedene Netzwerkdrucker ausdruckt (je nach Daten).
Der Dienst läuft als Systemuser und das Problem mit dem Standarddrucker des Systemusers habe ich mit einem Registryeintrag gelöst.
Alles funktioniert solange hervorragend, bis der Server neu gebootet wird (Windowsupdates etc.), dann hagelt es bei jedem Datensatz eine
Exception (Zugriffsverletzung bei Adresse XXXXXXXX in Modul 'ServiceName.exe'. Lesen von Adresse 00000000).
Um den richtigen Drucker einzustellen verwende ich folgenden Code:
Code:
Printer.PrinterIndex := Printers.IndexOf(Druckername);
und sobald ich auf die Druckerliste (Printers) zugreifen will kommt die
Exception.
Wenn ich den Dienst dann beende und neu starte funktioniert auch alles, aber das ist ja nicht der Sinn und Zweck eines Dienstes.
Ich vermute das ich irgendwelche Abhängigkeiten für den Dienst einstellen muß, nur welche?.
Spooler habe ich schon versucht, war's nicht.
Hat irgendwer noch 'ne Idee?
Gruß aus dem regnerischen Dortmund
Frank