Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #9  
Antiguo 18-10-2019
Diego E. Diego E. is offline
Miembro
 
Registrado: mar 2018
Posts: 30
Poder: 0
Diego E. Va por buen camino
Quizá sea útil ponerlos al día por si alguno sabe el por qué de esta nueva situación.

Resulta que ya se por qué intentaba abrir el puerto cero y algunas cosas más, la respuesta me dejó con muchas más dudas.
La razón por la que se intenta abrir el COM0 es que por alguna razón cuando la funcion lee los datos, los lee de forma revuelta, me explico, la estructura original es la siguiente:

Código Delphi [-]
TSSP_COMMAND = record
  Key: TSSP_FULL_KEY;
  BaudRate: Long;
  Timeout: Long;
  PortNumber: char;
  SSPAddress: char;
  RetryLevel: char;
  EncryptionStatus: char;
  CommandDataLength: char;
  CommandData: Array[0..255-1] of char;
  ResponseStatus: char;
  ResponseDataLength: char;
  ResponseData: Array[0..255-1] of char;
  IgnoreError: char;
end {SSP_COMMAND};

Nota: La cual por cierto si en lugar de char pongo byte o string o cualquier otra, jamás funciona ni el OpenPort, lo mismo con el long.

Lo que me di cuenta es que la función esta por ejemplo tomando el 5° char de la estructura como el puerto, sin importar el nombre del campo, es decir como en esa estrutura el 5° char era CommandDataLength y ese iniciaba en cero por eso intentaba abrir el COM0 y cualquier valor que le pusiera en CommandDataLength lo tomaba como el puerto a abrir, cosa que se me hizo demasiado extraño ya que cualquier campo que ponga en dicho lugar tiene el mismo efecto.

Nunca me había pasado algo así. Saben por qué puede estar pasando eso o si de plano tiene que ver por completo con como hicieron la dll? Por que en el C++ no pasa eso y ciertamente no logro ver que tengo diferente. El puerto abre correctamente cuando pongo el puerto que quiero en dicha posición, pero me pasa lo mismo al enviar un comando y ahí si son tantos campos que no podría identificar cada uno en su lugar y por consiguiente no se ejecuta con éxito.
Responder Con Cita
 



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
Llamar a funcion sin definir todos los parametros oscarac OOP 20 23-03-2011 23:10:54
Funcion de IAppServer con parametros out delphijm Providers 2 02-03-2011 13:21:59
funcion con parametros out comba Internet 2 20-10-2010 16:45:11
¿Una función en Delphi, puede devolver varios parámetros? socger Varios 6 27-02-2009 18:00:07
Que hace esta función en VB? mqm Varios 1 15-10-2007 20:30:15


La franja horaria es GMT +2. Ahora son las 19:42:32.


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