2009-10-19 9 views
6

Ho il compito spiacevole di eseguire lavori di manutenzione (minimi) su due applicazioni legacy sviluppate in DBIII +/Clipper '87.Applicazione legacy DOS con stampante USB

Ho pieno accesso all'origine e una toolchain minima per ricompilare l'applicazione quando necessario, ma non mi è permesso reimplementarlo da zero a causa di vari motivi (principalmente psicologici) dell'utente principale.

In ogni caso, mentre le applicazioni funzionano bene sotto XP, il supporto hardware sta diventando un compito ingrato. L'utente deve sostituire la stampante malfunzionante (un vecchio HP di impatto con interfaccia parallela) e il desktop 486 (!) In cui sono ospitate le applicazioni.

Il problema principale ora è trovare una stampante che può essere utilizzata in XP, possibilmente tramite USB (un Asus EEE Box sarebbe perfetto, e non mette in mostra una porta parallela) e renderlo "visibile" al DOS applicazioni.

Finora ho trovato una soluzione:

http://geekswithblogs.net/dtotzke/articles/26204.aspx

più qualche utilità:

http://www.dosprn.com/ http://www.dos2usb.com/index.htm http://www.printfil.com/english.htm

Le utilità sembrano meglio perché offrono un qualche tipo di filtro per le vecchie sequenze di escape (come ESC/P per Epson o il dialetto HP) che rendono questo transpa affitto alla stampante. O almeno così dicono.

Quindi la domanda è: qualcuno ha qualche esperienza sull'interfacciare i vecchi programmi DOS con le stampanti moderne con XP? Eventuali avvertimenti? Hai usato uno dei programmi di utilità elencati (o un altro che non ho ancora trovato) e se sì, quale consiglieresti?

+0

La soluzione alternativa sembra familiare. Ho reindirizzato la porta USB a LPT1 e di solito ha funzionato per me. –

+0

dosprn ++, penso ci fosse qualcos'altro ma non riesco a ricordarlo ... – Artelius

risposta

5

Generalmente facciamo esattamente ciò che uno dei link menziona. Cioè, installa la stampante sotto Windows su qualsiasi porta su cui vuole installarsi (es: USB ecc.).

Successivamente, condividere la stampante (diciamo che la workstation è denominata COMPUTER1 e la condivisione è HPPRINTER).

successivo creare un file batch per lanciare l'applicazione, dovrebbe essere simile a questa:

net use lpt1 /d 
net use lpt1 \\COMPUTER1\HPPRINTER 
<yourapp.exe> 

Nella vostra applicazione impostare l'uscita su LPT1.

Esistono altre soluzioni più complesse, ma questo è di gran lunga il più semplice. Abbiamo ancora un'app DOS che è stata costruita anni fa e che commercializziamo e vendiamo ancora attivamente. Questo è il modo in cui gestiamo la stampa. Funziona molto bene. È inoltre possibile ottenere il vantaggio di utilizzare Windows per accodare i lavori di stampa, in modo da mettere in pausa la coda della stampante, ecc. La stampante può anche essere spenta o esaurita e i lavori continuano a essere accodati nello spooler di Windows.

Avvertenza: si presume che l'output sarà supportato dalla nuova stampante. Se si tratta di un HP LaserJet "vecchio", probabilmente è PCL5, basta trovare un dispositivo che supporti PCL5 e via.

In termini di filtraggio, non sono sicuro del motivo per cui avresti bisogno di questo. Finché l'output è PCL o Postscript, o qualche altro standard, dovresti comunque essere in grado di trovare una stampante che supporti quella lingua di descrizione della stampa.Se avete dubbi, aggiungete un commento sul dispositivo corrente e io posso fornire idee sulla compatibilita 'mentre ci occupiamo quotidianamente di questo.

+0

Grazie mille. La settimana scorsa, ho fatto un giro in macchina nel tempo in un posto dove esistono ancora applicazioni DOS e mi hai salvato la giornata;) – toniedzwiedz