Hallo.
Ich habe einen USB-Drucker gekauft und kann jetzt keine Daten aus
dem GW-Basic Programm ausdrucken. Der bisher verwendete LPRINT
Befehl sendet nur an LPT1 und nicht an USB.
Kann mir einer helfen und mir die Druck- bzw. Open-Befehle für
GW-Basic für USB Drucker mitteilen.
Mit Gruß
PB
Programmieren - alles kontrollieren 4.941 Themen, 20.708 Beiträge
Hm,
also vom "20 Jahre alten" GW-Basic würde ich mich echt mal trennen. Ich bezweifle, dass Du damit einen USB-Drucker ansteuern kannst und es einen Workaround gibt, der nicht völlig absurd ist (beispielsweise Druckausgabe in Datei umleiten und die dann unter Windows per Batch ausdrucken).
Visual Basic Express von Microsoft kostet doch nix und den Code alter GW-Basic Programme hat man doch ratzfatz umgestrickt.
Grüße,
Mike
Man kann sich notfalls auch ein serielles Druckerkabel kaufen.
Dann funzt es mit LTP1:
Ich habe noch eins rumfliegen.
LPT1 ist parallel...
Hi!
IMHO versuchst du den falschen Ansatz. GW-basic kann gar nicht auf die benötigten Funktionen von Windows zugreifen, um den Drucker direkt über die USB-Schnittstelle anzusteuern. Der Weg das Problem zu lösen, kann da nur am Drucker bzw. dessen Drucktreiber unter Windows ansetzen.
Dein Programm bzw. GWBasic will den Drucker LPT1 ansteuern. Daher muss dein Drucker im Drucktreiber so eingerichtet werden, dass Windows ihn als LPT1 für alte 16Bit-Programme ansteuern kann. Ich kann dir nicht versprechen das das klappt, aber probieren schadet ja nichts.
Sollte man den Drucktreiber so einrichten können, das der Drucker unter den alten DOS-Routinen die Windows per vereinfachter Emulation bereitstellt), dann bliebe noch das Problem, ob der Drucker die übertragenen Druckcodes zur Druckausgabe versteht udn richtig ausführt. Bei diesem Punkt sehe ich die grössten Probleme. Unter DOS (GWBasis ist noch ein DOS-Program), gab es noch keine Druckertreiber wie unter Windows, die dafür sorgen, dass jedes Windows-Programm den Drucker nutzen kann. Unter DOS müsste jedes Programm das drucken wollte, die Steuerung des verwendeten Druckers selbst übernehmen. Da konnte dann schon der Wechsel von HP zu Epson bedeuten, dass die Druckausgabe nicht mehr passte.
Der Trick für die Verbindung des USB-Druckers mit LPT1 besteht darin, den Drucker als Netzwerkdrucker einzurichten udn freizugeben, dann kann er mit einem DOS/Shell-befehl mit der Schnittstelle LPT1 verbunden werden.
Dazu wird der Shell Befehl "net use" verwendet.
hier mal ein solcher Fall aus dem Netz: http://www.win-tipps-tweaks.de/forum/online-netzwerk/6535-verbinden-lpt1-per-net-use.html
Das stellt wie gesagt die Verbing her, so dass die interne Druckerschnittsrtelle LPT1 mit dem USB-Drucker verbunden wird. Das stellt aber in keinster Weise sicher, dass der Drucker auch versteht, was da als Druckausgabe an ihn gesendet wird!
Bis dann
Andreas
Hi,
Der Trick für die Verbindung des USB-Druckers mit LPT1 besteht darin, den Drucker als Netzwerkdrucker einzurichten udn freizugeben, dann kann er mit einem DOS/Shell-befehl mit der Schnittstelle LPT1 verbunden werden.
das kann ich in so weit bestätigen, als ich meinen Drucker, Canon iP4300, über die Fritzbox angeschlossen, über LPT1 (im Eigenschaften-Menü) einrichten könnte.
Ausprobieren kann ich das wohl nicht, mangels GW-Basic oder anderen echten DOS Programmen, aber ich werde mal suchen.