Ver Mensaje Individual
  #2  
Antiguo 15-07-2005
islu islu is offline
Miembro
 
Registrado: jun 2003
Posts: 111
Reputación: 21
islu Va por buen camino
Wink

Yo ahe utilizado estas librerias en varias ocasiones, y no se si tendrás el mismo problema que tuve yo en una ocasión, pero los sintomas son similares. En mi caso fue con una pístola de EAN, leyendo EAN128 ( bastante largos ), lo que hice fue, simplemente esperar el ASCII #13 ( o #10 ), es decir :

Código Delphi [-]
 {...}
 Completo : boolean; //->Completo es una variable global a la clase
 Status : string; //->Variable global también
 {...}
 
 procedure TFormEjemplo.PuertoTriggerAvail(CP: TObject; Count: Word);
 var
   i : integer;
   c : char;
 begin
   for i := 0 to Count - 1 do
   begin
     c := Puerto.GetChar;
     if( (c > #47) and (c < #91) ) then
       Status := Status + c;
 
     if( c = #13 ) then Completo := true;
   end;
 
   if( Completo ) then
   begin
     Completo := false;
     {...}
     {}
     {...}
     Status := '';
   end;
 end;
No se si tendrás algún carácter que te indique el fin, o que el SMS esta completo. Puedes provar con una cadena, o algo por el estilo.

Yo solo encontré esta solución, y ahora esta funcionando perfectamente casi 2 años....

Espero haberte ayudado....

Última edición por dec fecha: 05-09-2005 a las 15:39:39. Razón: (Encerrar el código fuente en la etiqueta DELPHI)
Responder Con Cita