Ich habe ein älteres Java-Programm, das einen speziellen Kartendrucker verarbeitet, indem es Binärdaten an den LPT1-Port sendet (es ist kein Druckertreiber beteiligt, das Java-Programm erstellt den Binärstrom).
Das Programm funktionierte ordnungsgemäß mit dem alten Computer des Clients. Das Java-Programm hat alle Bytes an den Drucker gesendet, und nach dem Senden des letzten Bytes wurde das Programm nicht blockiert. Es dauerte eine weitere Minute, bis der Kartendruck abgeschlossen war, aber der Benutzer konnte die Arbeit mit dem Programm fortsetzen.
Nachdem der Computer des Clients (aber nicht der Drucker oder das Java-Programm) geändert wurde, beendet das Programm die Aufgabe erst, wenn die Karte fertig ist. Sie wird bis zur letzten Sekunde blockiert.
Es scheint mir, dass LPT1 jetzt ein anderes Verhalten hat als zuvor. Ist es möglich, dies in Windows zu ändern? Ich habe das BIOS auf Einstellungen für parallele Ports überprüft: Der parallele Port ist auf EPP + ECP eingestellt (habe aber auch die beiden anderen Optionen ausprobiert: Bidirektional, Nur Ausgabe). Vielleicht ist eine Art Parallelport-Puffer zu klein? Wie kann ich es erhöhen?