Filter soll auf bestimmten Drucker drucken

  • Betr. Version 4.0.24.0

    Hallo Forum,

    Mein Filter soll die Nachrichten, die auf einem bestimmten Konto ankommen immer sofort auf dem gleichen Drucker drucken (weil dort farbiges Papier drin ist), unabhängig davon, was als Standarddrucker eingestellt ist.

    Bei der Version 1.6 konnte man das problemlos einstellen.

    Auf Nachfrage bei Ritlabs teilte man mir mit, der Filter könne grundsätzlich nur auf den Standarddrucker zugreifen. Das ist aber nicht richtig, vielmehr merkt sich BAT (oder die Registry?) den zuletzt verwendeten Drucker (ähnlich wie bei WORD) und druckt dann dort erneut.

    Wie kann den Drucker im Filter vorwählen?

    Danke im Voraus

  • Hallo gabrimmo und willkommen im Forum.

    Ritlabs hat Recht. Aus dem Filter heraus kannst du nur auf dem Standarddrucker drucken, weil eben der Druckdialog im Filtermanager keine Auswahl des Druckers ermöglicht.
    Ergo: Um über einen Filter auf einem bestimmten Drucker zu drucken, muss dieser Standarddrucker werden.

    Ich hab das nicht getestet, aber mir schwebt ein Script vor, das du ebenfalls im Filtermanager vor dem eigentlichen Druckbefehl aufrufst; also erst über die Filteraktion "Programm starten" das Script ausführen, das einen neuen Standarddrucker einstellt, dann mit "Nachricht drucken" die Nachricht drucken und dann mit einem zweiten Script den alten Standarddrucker wiederherstellen.

    Hilfen hierzu findest du auf diesen Seiten
    http://www.supernature-forum.de/programmierung…pt-aendern.html
    http://msdn.microsoft.com/en-us/library/aa394598(VS.85).aspx
    http://www.quaschtel.de/wsh/wscriptnetwork.htm
    http://www.administrator.de/index.php?content=58804
    sowie die Suchmaschine des Vertrauens.

    Viel Erfolg! Und ich wäre gespannt auf das Ergebnis...

  • Hallo mse,
    vielen Dank für die schnelle Info.
    Von Script habe ich als User leider keine Ahnung. Wo schreibt man das hin?
    die Idee ist bestimmt gut, allerdings interessiert sich Bat überhaupt nicht für den Standarddrucker (außer nach dem Hochfahren) sondern der Filter druckt auf den zuletzt benutzten Drucker.
    Wenn also A der Standarddrucker ist, und ich drucke etwas auf B, dann werden alle gefilterten Nachrichten auf B gedruckt. Es nützt also garnichts den Standarddrucker zu verstellen.
    Ich müsste entweder den zuletzt verwendeten Drucker auf die vorgeschlagene Weise definieren
    (wie ändert sich dann das Script?) oder ich müsste wissen, wo dieser zuletzt verwendete Drucker abgespeichert ist, und diesen Speicherort irgendwie schützen, so dass dort immer derselbe Drucker drinsteht.
    Oder ich müsste BAT beibringen, tatsächlich immer den Standarddrucker zu verwenden, der ist bei mir nämlich immer gleich. Dann lege ich eben dort das farbige Papier rein, das wäre einfach. Aber Bat benutzt eben NICHT den Standarddrucker.
    Wie ändere ich als das Script ab (z.B. quatschel, das ist sehr kurz) und wo schreibe ich das hin?

  • Ja, ist wohl so wie du das geschrieben hast. Das disqualifiziert natürlich die vorgeschlagenen Scripts; zumindest die Standardgeschichten. Allerdings habe ich nur eine ganz ungefähre Ahnung, wo The Bat die Einstellungen hinsichert. Beim Start wird die Datei CONFIG.CDB häufig angesprochen. Deren Inhalt ist allerdings nicht einfach so lesbar. Vermutlich wird dort drin die Information über den Standarddrucker beim Start eingelesen. In der Registry habe ich auf die Schnelle nichts gesehen, was wie ein Schlüssel für den Standarddrucker aussieht.

    Die nicht-sehr-deluxe-Abhilfe sähe dann so aus, dass du nach dem Start von The Bat eine Nachricht druckst, zumindest mal den Druckauftrag startest (kannst ihn dann ja wieder abbrechen) damit The Bat lernt, welchen Drucker es verwenden soll. Dann werden auch die Druckaufträge, die über den Filter auflaufen, auf dem so ausgewählten Drucker ausgegeben.

  • Na so schlecht fand ich den ursprünglichen Tip gar nicht. Wenn irgendjemand im Forum wüsste, wo der zuletzt benutzte Drucker gespeichert ist, könnte man das ja entsprechend abändern. Ich glaube nicht, dass Bat einen eigenen Speicherort dafür hat, weil beim Drucken über den Windows-Explorer genau das gleiche Phänomen auftritt: es wird immer der zuletzt benutzte Drucker verwendet.
    Irgendjemand müsste doch wissen, wie man da rankommt???