Vejam o código da 1ª tentativa, enviando um ACK antes do início da rotina de leitura:
Código: Selecionar todos
OutChr( nHandle, ACK ) // Envia um Ack (06) para o COBAS.
DO WHILE InBufSize( nHandle ) > 0
nRead := InBufSize(nHandle)
cRead := Space(nRead)
InChr( nHandle, nRead, @cRead)
cRet += cRead
ENDDO
OutChr( nHandle, ACK ) // Envia um Ack (06) para o COBAS.
FGravaTxt( cArqTmp, cLinha )Código: Selecionar todos
DO WHILE InBufSize( nHandle ) > 0
OutChr( nHandle, ACK ) // Envia um Ack (06) para o COBAS.
nRead := InBufSize(nHandle)
cRead := Space(nRead)
InChr( nHandle, nRead, @cRead)
cRet += cRead
ENDDO
OutChr( nHandle, ACK ) // Envia um Ack (06) para o COBAS.
FGravaTxt( cArqTmp, cLinha )

