Post by Alexander GoetzensteinHallo,
Post by Kay MartinenPost by Alexander GoetzensteinPost by Alexander GoetzensteinHallo,
gegeben ist ein Buchhaltungsprogramm für DOS, das in einer dosbox läuft.
konnte DOS auch Netzlaufwerke...
Netzlaufwerke und Netzwerkdrucker sind gern mal zwei verschiedene Dinge.
Zumal er seinen Drucker direkt (über Port 9100) anspricht.
Mit einem Drucker der auch Netzwerk-speicher als Freigabe an bietet
könnte das noch irgendwie klappen und man dessen share mit einem 'net
use x: //share einbindet. Dann müsste der nur noch die abgelegte datei
drucken *können*.
Insgesamt müsste das dann aber alles über klassisches SMB/CIFS gehen.
Sprich: LANMAN (uralt) oder SMBv1 (vermutlich) und der Drucker müsste es
anbieten oder ein Server dazwischen geschaltet sein der auf ein 'net use
PRN (???) //drucker' reagiert und es dann weiter geben könnte. Ist aber
reine Theorie.
ich hoffte mehr auf eine Methode, die Ausgabe von PRN oder LPTx auf eine
Drucker-Queue umzuleiten. Kann man das irgendwie hinbekommen?
Sicher. Programmiere es dir selbst wenn sich nichts fertiges Findet. ;-)
Mal drüber nachgedacht das alte Programm gegen was anderes zu tauschen?
Du brauchst ja zuerst mal in der DOSbox den PRN-Support. Wenn dein
DOS-Programm; wie damals viele andere; einfach den ersten oder
eingestellten Drucker vom BIOS/DOS-funktionen abfragte kann es sein das
es über eine DOS-Funktion druckt. Kann aber auch sein das es z.b. den
I/O Port der Druckerschnittstelle direkt ansprechen will - was unter DOS
nicht nur möglich sondern teils auch üblich ist. Aber nicht mehr unter
Multitasking Systemen (also alles ab dem ersten Windows, OS/2, Linux)
denn dort ergibt der Direktzugriff einen (Ausnahme)Fehler.
In beiden Fällen müßte zuerst mal der Emulator DOSbox die DOS-Funktion
zum Drucken implementiert haben und auf die I/O-Adresse eines
Druckerports reagieren wie der Parallel-interface Chip der da früher
dran hing. Da wird ein Byte raus geschoben und auf Ok vom Drucker
gewartet, dann das nächste.
Erst DANN kann dein Programm auch direkt einen Drucker an sprechen.
Und dann erst kannst du den Emulator davon überzeugen WO er diese
Druckdaten hin schicken soll. Z.b. an einen Port 9100 einer bestimmten
IP. Oder an ein Software-interface das von CUPS bereit gestellt würde.
Dann könnte der sich um den rest kümmern.
Darum kam ich zu dem Vorschlag dein DOS Programm in einem DOS-Fenster
eines Windows laufen zu lassen - WENN es einen Treiber für dein
Druckermodell gibt der die von dir gewünschte PRN/LPT zu x Umwandlung
beinhaltete.
Andere Denkbare Umweg-Variante wäre den Drucker an einem neueren Windows
oder Desktop-Linux einrichten und für (Windows-)Clients frei zu geben.
Dann brauchst du nur noch eine VM mit einem älteren Windows (ab 9x) das
Remote-Drucker benutzten kann. Und auf dem Installierst du dein DOS
Programm und läßt es nach PRN drucken. Wenn dessen Treiber das aufnimmt
leitet er es an das neue Windows weiter und das dann zum Drucker.
Kann man alles auf einem Laptop installieren und der VM nur zugriff auf
Localhost und die host-IP gewähren - aber keinen Externen Zugriff.
Einfach wird auch das nicht ein zu richten sein. In der Benutzung könnte
es dann aber einfacher sein.
Sicher das du dich nicht in ein neues Buchhaltungs-programm einarbeiten
willst? Das wäre vermutlich deutlich einfacher.
Bye/
/Kay
--
Posted via Leafnode