Ver Mensaje Individual
  #1  
Antiguo 17-09-2018
Avatar de Maniches
Maniches Maniches is offline
Miembro
 
Registrado: nov 2012
Ubicación: Lima - Perú
Posts: 67
Reputación: 12
Maniches Va por buen camino
Thumbs up Error Parámetro Referencia componente ActiveX

Hola Amigos del Foro,

Actualmente tengo un problema usando un componente ActiveX que esta devolviendo un parámetro por referencia de tipo WideString(Es la definición de la importación del componente).
Al momento de usar la funcion y pasar un parametro de tipo WideString me esta mostrando el error: "Access violations at address 1381O7AO in module *.DLL. Write of address 00000000"

La definición de la función es:

Código Delphi [-]
    function  ReadInformation(var szCard: WideString; iTimeChip: SYSINT; iTimeMag: SYSINT; iType: SYSINT; const messMag: WideString): SYSINT; safecall;

La definición Exacta según el que ha creado el componente:

HRESULT ReadInformation([in] BSTR* szCard, [in] int iTimeChip, [in] int iTimeMag, [in] int iType, [in] BSTR messMag, [out, retval] int *rc)


Yo estoy haciendo una simple prueba de la función:

Código Delphi [-]
procedure TForm2.btnConInfClick(Sender: TObject);
var
  ....
  CardInformation : WideString;
begin
  try
    ...
    ReadCardResult:= MyCompActX.ReadInformation(CardInformation, 20, 20, 1, 'INGRESE NUM...');
    if Trim(CardInformation) <> '' then
      ShowMessage(CardInformation);
  finally
    MyCompActX.Free;
  end;
end;

Si algún compañero del foro me puede ayudar, por que se esta generando ese problema o la forma de como debe de pasarse un parámetro por referencia a un ActiveX?
La persona que creo el componente me indico trabajarlo con puntero y que a este tengo que asignarle memoria (memoria dinámica). Si pudieran indicarme como es la definición o un ejemplo de lo que me han indicado.

Muchas Gracias a los que me pudieran compartir alguna solución para probar o es problema del componente ActiveX. según el que desarrollo este componente con un app. en visual basic le trabaja muy bien.
__________________
Maniches
maniches@outlook.com

Última edición por Maniches fecha: 17-09-2018 a las 18:32:10.
Responder Con Cita