1.- Compartir la Impresora USB
2.- "Redireccionar" la salida LTP1 de dos maneras:
a: En la archivo AUTOEXEC.NT que se encuentra en \WINDOWS\SYSTEM32 colocar lo siguiente:
NET USE LPT1 \\NOMBRE_PC\IMPRESORA_TICKET /PERSISTENT:YES
b: Utilizar la funcion NETREDIR("LPT1","\\NOMBRE_PC\IMPRESORA_TICKET") antes de realizar la impresion
Y sigues usando la TDOSPRINT con todas sus bondades.....
Function PrintDosForWin()
Local cTexto := ""
Local ON_GRANDE := CHR(27) + CHR(33) + CHR(16) // Para Impresoras Epson
Local OFF_GRANDE := CHR(27) + CHR(33) + CHR(01) // Para Impresoras Epson
Local cPrinter := GetDefaultPrinter() // Seleciona la Impresora Por Defecto de Windows
Local CRLF := CHR(13) + CHR(10)
Local cFileName := "texto.prn"
cTexto += "Esta es la primera linea del texto" + CRLF
cTexto += Replicate( "*-", 20 ) + CRLF
cTexto += ON_GRANDE + "LETRAS GRANDES" + OFF_GRANDE + CRLF
cTexto += "Esta es otra linea de texto..." + CRLF
cTexto += PADL( "Izquierza", 40 ) + CRLF
cTexto += PADC( "CENTRALIZADO", 40 ) + CRLF
cTexto += PADR( "Derecha", 40 ) + CRLF
cTexto += PADC( "< Linea Final >", 40, "-" ) + CRLF
If WriteStream( cFileName, cTexto )
// Envia la Impresion al Spool de Windows
PrintFileRaw( cPrinter, cFileName, "Impresion En Formato DOS desde Windows" )
FERASE( cFileName )
EndIF
Return Nil
// Esta Funcion la encontre por ahi...
FUNCTION WriteStream( cFile, cStream )
LOCAL nHandle := FCreate( cFile )
IF FError() <> 0
RETURN( .F. )
ENDIF
FWrite( nHandle, cStream, Len(cStream) )
FClose( nHandle )
RETURN ( FError() == 0 )
Return to FiveWin para Harbour/xHarbour
Users browsing this forum: No registered users and 66 guests