@Arnaldo:
- cerraste la cola de impresión? aunque sea "a mano" mandando un echo ^L > LPT1
(ctrl+L = avance de hoja)
- probaste enviando algo sin códigos de control PCL? (por ejemplo DIR > LPT1)
- otra opción es capturar la cola de impresión a un archivo (compartiendo una impresora
genérica redireccionada a un archivo o utilizando directamente la carpeta Spooler de
Windows) y luego mandar a imprimir con un programa Windows (yo usé
http://www.lerup.com/printfile que es gratuito)
- otra opción más es usar un programa pago que haga todo el trabajo (captura de
puerto, traducción de códigos PCL e impresión):
http://www.dosprn.comCon una impresora USB me pasó algo similar a lo tuyo, pero no pude lograr de
ninguna forma que imprimiera y tuve que terminar haciendo una especie de "spooler"
en VFP usando las APIs:
DECLARE INTEGER DefineDosDevice IN WIN32API
DECLARE INTEGER OpenPrinter IN WINSPOOL.DRV
DECLARE INTEGER ClosePrinter IN WINSPOOL.DRV
DECLARE INTEGER StartDocPrinter IN WINSPOOL.DRV
DECLARE INTEGER EndDocPrinter IN WINSPOOL.DRV
DECLARE INTEGER WritePrinter IN WINSPOOL.DRV
DECLARE INTEGER GetProcessHeap IN WIN32API
DECLARE LONG HeapAlloc IN WIN32API
DECLARE INTEGER HeapFree IN WIN32API
DECLARE memcpy IN MSVCRT AS CopyMemory
DECLARE INTEGER GetLastError IN WIN32API
Lo bueno es que funciona, lo malo es que no fué nada trivial :(
HTH
Mario
---