Amigos, va de nuevo
Miren tengo un lector de codigos en 2D, actualmente estoy conectando al com1 y lee perfectamente, y el tamano de la lectura tambien es de 702 nBytes.
Perfecto.
El asunto es que tengo que cargar en un variable la lectura del codigo de 2D, para procesarla, pero no se como hacerlo o algo esta mal pues el tamaño de la lectuta bytes es la correcta, pero no se como cargar esa informacion a un avariable.
estoy usando lo siguiente
FUNCTION leer_bloque()
MsgInfo( "Proceda a leer ahora" )
nComm:= OpenComm("COM1" , 1024,128)
cBuffer:=Space(702)
nBytes := ReadComm (nComm,@cBuffer)
?? cBuffer
RETURN
Pero solo un caracter logro cargar, es aqui donde las ideas podrian ayudar o algo estoy haciendo mal.
Abajo pondo la palicacion que tome de foro.
Graxias desde YA.
Oscar chacon Orozco
Busmatic de CR
//**********
bajado del Foro
//***********
#include "Fivewin.ch"
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,n,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()
MsgInfo( "Proceda a leer ahora" )
nComm:= OpenComm("COM1" , 1024,128)
cBuffer:=Space(702)
nBytes := ReadComm (nComm,@cBuffer)
?? cBuffer
RETURN