Unter OSX gibt es keinen generischen Textdrucker.
OSX behandelt JEDEN Drucker intern als Postscript auf Betriebssystemebene. Konvertiert dann die Postscript-Ausgabe in die Sprache, die der Drucker benötigt (in Ihrem Fall ZPLII).
Die Remote-Desktop-App erkennt also einen "Postscript" -Drucker unter OSX und übermittelt diesen an Ihren Windows-Server. (Windows betrachtet es normalerweise als "MS ImageSetter-Gerät", bei dem es sich um einen generischen PostScript-Drucker handelt.)
Ihre Anwendung ignoriert dies und schiebt den RAW ZPLII trotzdem auf den Mac, der Mac erwartete jedoch Postscript und damit Ihre Fehlermeldung, wenn er versucht, die Postscript-Datei zu interpretieren (was eigentlich kein Postscript, sondern ZPLII ist).
Das ist unangenehm, weil man das nicht so leicht schafft.
Wenn es sich bei dem Kundendrucker um einen Netzwerkdrucker handelt (ich erinnere mich an die GXxxxt-Modelle, die über die normale Zebra-LAN-Schnittstelle verfügen), können Sie möglicherweise die unformatierte ZPL-Datei an den Kunden liefern und den Kunden die manuelle Verwendung des alten Druckers mit dem alten Drucker ermöglichen lpr Befehl. Der Kunde müsste so etwas auf einer Kommandozeile in Terminal ausführen:
lpr -H <ip-address printer> -P PORT1LF -l <filename of ZPL-file>
Bitte beachten Sie: -H und -P sind Groß- und Kleinschreibung! "-l" ist ein Kleinbuchstabe L.
-H (Hostname) gibt die IP-Adresse des Druckers an, -P den Warteschlangennamen, -l bedeutet "Datei ist bereits formatiert, berühren Sie den Inhalt nicht".
Bitte beachten Sie (2): PORT1LF ist der normale Warteschlangenname, der intern von Zebra-LAN-Schnittstellen verwendet wird. Wenn das Zebra keine Zebra-LAN-Schnittstelle verwendet, sondern eine andere Marke, müssen Sie normalerweise "auto" oder "text" für den Parameter -P verwenden. Konsultieren Sie das Handbuch.
EDIT nach einiger Forschung hinzugefügt
Unter OSX können Sie eine sogenannte "RAW" - Druckerwarteschlange erstellen, indem Sie das Befehlszeilen-Tool lpadmin oder das CUPS-Webinterface unter http: // localhost: 631 verwenden .
Solche RAW-Drucker werden jedoch in OSX nicht als normale Drucker angezeigt, da OSX-GUI-Anwendungen unbedingt einen Drucker als Postscript benötigen. Für Nicht-Postscript-Drucker bietet CUPS einen Postscript-Konverter, der das Postscript in etwas übersetzt, das der Nicht-Postscript-Drucker versteht.
Für einen RAW-Drucker kann diese Konvertierung in Postscript nicht durchgeführt werden. Daher werden RAW-Drucker OSX-GUI-Anwendungen nicht als gültige Druckgeräte angeboten. (Sie können mit den Befehlszeilen-Druckwerkzeugen wie lpq, lpr usw. verwendet werden.)
Und deshalb leitet KEIN RDP-Client unter OSX sie weiter! Sie leiten nur normale Drucker weiter.
(Technisch gesehen gibt es keinen Grund, warum der RDP-Client keinen RAW-Drucker (mit Old-School-Unix-lpr / lpq-Handling) über RDP als "Generic / Text Only" -Drucker für Windows darstellen konnte. Es wäre jedoch eine zusätzliche Programmierung erforderlich Dies geschieht. Und da diese spezielle Verwendung eine sehr kleine Nische ist, sehe ich dies nicht so schnell.)
Ihr einziger Workaround ist, soweit ich das beurteilen kann, der bereits erwähnte. Geben Sie die Datei an den Benutzer weiter und lassen Sie ihn lokal mit lpr drucken.
Der Drucker ist über USB angeschlossen, dies ist jedoch kein Problem. Mit der CUPS-Weboberfläche können Sie einen USB-Drucker als unformatierte Druckwarteschlange einrichten. Teil dieser Webseite Fügen Sie eine Rohdruckwarteschlange hinzu. Sie müssen nur die Schritte 3 bis 7 erläutern. Es verwendet sogar ein Zebra als Beispiel.