Drukowanie z programów DOS na Windows 11 – vDos, DOSBox-X, Printfil, DOSprn, drukarki USB
Pytanie
Jak drukować z programu dos na windows 11
Odpowiedź Sztucznej Inteligencji
Bezpośrednia odpowiedź na pytanie
- Najpewniejszym sposobem drukowania z aplikacji DOS w Windows 11 (64 bit) jest uruchomienie programu DOS w emulatorze (np. vDos lub DOSBox-X) albo użycie dedykowanego „przechwytującego” oprogramowania (np. Printfil / DOSprn), które przekieruje dane wysyłane na wirtualny port LPT do dowolnej drukarki widzianej przez Windows.
- Kluczowe kroki: zainstaluj emulator → zamontuj katalog z aplikacją DOS → włącz wirtualny port LPT → przekieruj wydruk do drukarki lub pliku PDF.
Szczegółowa analiza problemu
-
Architektura i ograniczenia
• Windows 11 64-bit nie posiada już NTVDM, więc nie uruchamia natywnie 16-bitowych programów DOS ani nie wystawia fizycznych portów LPT/COM.
• Nowoczesne drukarki (USB, Wi-Fi, GDI) nie rozumieją sekwencji ESC/P lub PCL wysyłanych bezpośrednio przez stare programy.
• Konieczne jest więc „pośrednictwo” – emulator lub oprogramowanie przechwytujące strumień drukowania.
-
Metody i ich praktyczna implementacja
a) vDos (najprostsze, bezpłatne do zastosowań prywatnych)
- Pobierz z www.vdos.info i zainstaluj.
- Utwórz folder, np. C:\DOS\APP i skopiuj tam program.
- W pliku autoexec.txt dodaj:
USE C: C:\DOS\APP
C:
- Domyślnie vDos przechwytuje LPT1 → wysyła na domyślną drukarkę Windows lub tworzy PDF (konfig. w config.txt:
LPT1 = PDF
).
- W programie DOS ustaw drukarkę na LPT1 i wydrukuj – zadanie pojawi się w buforze Windows lub w katalogu vDos jako PDF.
b) DOSBox-X (open-source, większa kontrola nad sprzętem)
• Sekcje konfig.:
[parallel]
parallel1 = printer
[printer]
printer = true
dpi = 300
multipage= false
output = printer
• Wydruk kierowany na LPT1 trafia do sterownika Windows, ewentualnie do pliku .PNG/.PS.
• Przy aplikacjach graficznych (np. AutoCAD R10) umożliwia przechwycenie grafiki wektorowej PostScript.
c) Oprogramowanie przechwytujące (Printfil, DOSprn, DOSPrinter)
• Instalowane w systemie hosta — nie wymaga emulacji całego DOS-a.
• Monitoruje porty LPT/COM lub wskazany folder z plikami .PRN/.TXT.
• Obsługuje dowolną drukarkę Windows, w tym „Microsoft Print to PDF”.
• Printfil 5.28 deklaruje pełne wsparcie Windows 11/Server 2022.
d) NTVDMx64 + dospr (dla entuzjastów; wymaga modyfikacji Secure Boot)
• Port NTVDM przeniesiony do 64-bit; niekiedy działa w 22H2/24H2, ale jest wrażliwy na aktualizacje systemu.
• Drukowanie obsługiwane skryptem dospr
, który tłumaczy ESC/P lub PCL na GDI.
• Rozwiązanie niestabilne – odradzane w środowiskach produkcyjnych.
e) Maszyna wirtualna (VirtualBox/VMware + Windows XP 32-bit)
• Daje pełne NTVDM i realne LPT1 w warstwie gościa.
• W hostcie instalujesz sterownik „Port LPT passthrough” lub udostępniasz drukarkę sieciowo i w VM mapujesz:
net use lpt1: \\HOST\DRUKARKA
• Metoda zasobo- i licencjochłonna, ale czasem jedyna dla bardzo specyficznego oprogramowania.
-
Obsługa polskich znaków
• DOS używa strony kodowej 852; po przechwyceniu może być konieczne konwertowanie na Windows-1250 lub UTF-8.
• vDos posiada opcję CODEPAGE = 852
oraz mapowanie diakrytyków do Unicode.
-
Diagnostyka
• Test portu w emulatorze: echo TEST> LPT1
.
• W Windows sprawdź kolejkę wydruku (control printers → kolejka).
• Jeśli wydruk jest pusty → prawdopodobnie drukarka jest GDI i wymaga Printfil/DOSprn.
Aktualne informacje i trendy
- Wersje Windows 11 24H2 dalej nie przywracają NTVDM; trend → pełna rezygnacja z 16-bit.
- Drukarki coraz częściej oferują tylko protokoły IPP/AirPrint; brak trybu RAW-PJL/ESC/P świadczy o konieczności tłumaczenia strumieni DOS-owych.
- Oprogramowanie Printfil/DOSprn aktualizowane (2024) – wsparcie PDF/A, zabezpieczonego drukowania, konteneryzacji (Docker Desktop).
- Coraz popularniejsze jest przenoszenie starych aplikacji do SaaS lub pisanie mikro-serwisów konwertujących wyjście DOS → PDF → wydruk sieciowy (CUPS/IPP).
Wspierające wyjaśnienia i detale
- LPT (Line Printer Terminal) – 8-bitowa magistrala równoległa; w DOS występowała pod adresami 0x378, 0x278.
- GDI-printer – drukarka, która przyjmuje bitmapę z Windows, nie rozumie kodów ESC/P ani PCL.
- emulator vs. „print capture”
• Emulator (vDos/DOSBox-X): pełne środowisko DOS, lepsza kompatybilność z aplikacją.
• Print-capture (Printfil/DOSprn): działa na programie DOS uruchomionym przez emulator lub 32-bit CMD.
Aspekty etyczne i prawne
- Licencje: vDos darmowy w zastosowaniach prywatnych; Printfil jest shareware (licencja per stanowisko).
- Bezpieczeństwo: NTVDMx64 wymaga wyłączenia/obejścia Secure Boot – może naruszać polityki IT.
- Ochrona danych: przechwytywane wydruki mogą zawierać dane wrażliwe; zalecane szyfrowanie dysków tymczasowych i prawidłowe czyszczenie folderu spool.
Praktyczne wskazówki
- Zacznij od vDos – w 90 % przypadków działa „out-of-the-box”.
- Jeżeli potrzebujesz drukowania graficznego (np. faktury z logo) → DOSBox-X z outputem PostScript lub Printfil.
- Koniecznie zrób kopię zapasową plików programu i ustawień przed migracją.
- Po pomyślnym wydruku zapisz procedurę w dokumentacji działu IT (kroki instalacji, wersje narzędzi).
Ewentualne zastrzeżenia lub uwagi dodatkowe
- Aplikacje DOS wymagające portu COM (np. drukarki szeregowe) – w emulatorach trzeba skonfigurować
[serial]
i mapować na wirtualny port COMx→USB.
- Drukarki fiskalne: często posiadają własne sterowniki Windows, przez co przechwytywanie LPT może nie wystarczyć.
- NTVDMx64 po każdej dużej aktualizacji Windows może przestać działać – wymaga ciągłej pielęgnacji.
Sugestie dalszych badań
- Analiza automatycznej konwersji strumienia DOS → PDF/A zgodnego z archiwizacją e-faktur.
- Konteneryzacja środowiska DOS (Docker + FreeDOS + vDos) dla łatwego przenoszenia pomiędzy stanowiskami.
- Migracja kodu źródłowego aplikacji DOS do nowoczesnych języków (QB64, FreePascal).
Krótkie podsumowanie
Drukowanie z programu DOS na Windows 11 wymaga obejścia braku NTVDM i portów LPT. Najpraktyczniejsze rozwiązanie to:
- uruchomienie aplikacji DOS w emulatorze (vDos lub DOSBox-X) z wirtualnym LPT → wydruk trafia do sterownika Windows lub PDF,
- lub zainstalowanie programu przechwytującego (Printfil/DOSprn), który konwertuje strumień LPT do dowolnej drukarki.
Dzięki tym narzędziom możesz bezpiecznie kontynuować korzystanie ze starych aplikacji, z zachowaniem pełnej kompatybilności z drukarkami USB, sieciowymi i wirtualnymi Windows 11.
Zadaj dodatkowe pytanie Sztucznej Inteligencji
Zastrzeżenie: Odpowiedzi udzielone przez sztuczną inteligencję (model językowy) mogą być niedokładne i wprowadzające w błąd. Elektroda nie ponosi odpowiedzialności za dokładność, rzetelność ani kompletność prezentowanych informacji. Wszystkie odpowiedzi powinny być zweryfikowane przez użytkownika.