Un saludo al foro,, alguien tiene un programa lea un codigo de barras y se quede en el campo conforme a su cGet que tiene el control en la aplicacion como lo hace los lectores para teclado ya que es automatico. el lector que tengo es un symbol ls 5800 rs-232c serial y he probado ejemplos que hay en este foro para verificar la lectura pero no pasa nada.
Este ejemplo lo tome como referencia pero quiero que al leer el codigo de barra le dato o valor se quede en el cGet de mi dialogo.
Alguien que tenga algo hecho le agradecere que me apoye con su codigo.
Saludos
****************
* bajado del Foro
****************
FUNCTION abrirport
LOCAL IdPort,cDcb,nError
IdPort := OpenComm("COM1",1024,1024)
IF IdPort <= 0
nError = GetCommError( IdPort)
MsgInfo( "Error al abrir: " + Str( nError ) )
ELSE
MsgRun("Puerto abierto como " + STR(IdPort))
ENDIF
IF ! BuildCommDcb("COM1"+":9600,e,8,1" , @cDcb)
nError = GetCommError( IdPort)
MsgInfo( "Error al Configurar: " + Str( nError ) )
RETURN 0
ELSE
MsgRun("Puerto Configurado")
ENDIF
IF ! SetCommState( IdPort, cDcb )
nError = GetCommError( IdPort)
MsgInfo( "Error al setear: " + Str( nError ) )
RETURN 0
ELSE
MsgRun("Puerto Seteado")
ENDIF
leer_bloque()
if ! CloseComm()
nError = GetCommError( "COM1" )
MsgInfo( "Error cerrando puerto: " + Str( nError ) )
endif
QUIT
RETURN IdPort
FUNCTION leer_bloque()
*-
for n = 1 to Len( cBuffer )
MsgInfo( Asc( SubStr( cBuffer, n, 1 ) ) )
next
*-
MsgInfo( "Proceda a leer ahora" )
nComm:= OpenComm("COM1" , 1024,128)
cBuffer:=Space(702)
nBytes := ReadComm (nComm,@cBuffer)
msginfo(cBuffer)
RETURN