Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 04-03-2008
BetoAlonso BetoAlonso is offline
Miembro
 
Registrado: Jul 2003
Posts: 113
Poder: 15
BetoAlonso Va por buen camino
Unhappy readfile?

Saludos estimados foristas

Estoy utilizando el comando readfile para leer el contenido de una informacion a traves del puerto com, el codigo de lectura es el siguiente.

Código:
Function Leer_Puerto_Serie (ai_cantidad:Integer):String;
Var
lb_read:Boolean;
ls_cadena:String;
li_leido:dWord;
Begin
//read_msg = Space(amount_to_read+1)

lb_read:=ReadFile(serial_handle, ls_cadena, ai_cantidad,li_leido,nil);

If not lb_read Then
ShowMessage('Error Read Puerto Serie');

IF li_leido = 0 THEN
Showmessage('No Hay Dato en el Puerto Serie');

Result:=ls_cadena;

end;
al momento que deseo capturar el resultado me sale un error en tiempo de ejecucion Access Violation at addres.

alguien podria indicarme si hay un error en el codigo, muchas gracias.

este codigo lo copie de un post anterior
Responder Con Cita
  #2  
Antiguo 04-03-2008
Avatar de cHackAll
[cHackAll] cHackAll is offline
Baneado?
 
Registrado: Oct 2006
Posts: 2.159
Poder: 14
cHackAll Va por buen camino
El problema es que no se está inicializando la variable de retorno (string); una posible solucion es usar cadenas cortas;

Código Delphi [-]
function Leer_Puerto_Serie2(Count: Byte): ShortString;
var Bytes: Cardinal;
begin
 if not ReadFile(serial_handle, Result[1], Count, Bytes, nil) then
  ShowMessage('Error Read Puerto Serie');
 Result[0] := Bytes;
 if Bytes = 0 then
  Showmessage('No Hay Dato en el Puerto Serie');
end;

Y la otra es inicializar dicha cadena ls_cadena[1], con SetLength.. y una vez leido del puerto corregir su dimensión.

Saludos
Responder Con Cita
  #3  
Antiguo 05-03-2008
BetoAlonso BetoAlonso is offline
Miembro
 
Registrado: Jul 2003
Posts: 113
Poder: 15
BetoAlonso Va por buen camino
Muchas gracias cHackAll

Su opinion fue de mucha ayuda.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
WNET/wnet_error: ReadFile end-of-file errno = 109 evt Firebird e Interbase 0 11-12-2007 14:38:55


La franja horaria es GMT +2. Ahora son las 20:06:15.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi