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

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 07-11-2007
Avatar de Alexander
Alexander Alexander is offline
Miembro
 
Registrado: may 2004
Posts: 235
Poder: 20
Alexander Va por buen camino
Post Comparar dato llamado de Dll

Hola a todos.

He llamado una función que hice en una dll, pero al comprar el dato que me envio la dll, hay error de "Invalid Pointer Operation"

Código Delphi [-]
{$IFNDEF MYDLL}
function OpenFileConfig( pNombre: String) : String;
  StdCall External 'MYDLL.dll';
{$ENDIF}
 
 // en el botón hago
 
  Ruta := OpenFileConfig('archivo_.ini');
  if Ruta = '' then

al hacer el if aborta con el error de "Invalid Pointer Operation".

Como puedo comparar un dato String que biene de una función externa.

Gracias
__________________
Cielos azules
Responder Con Cita
  #2  
Antiguo 08-11-2007
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Puede que el compilador se "pare" en la línea de la condición, pero, para mí que el problema es anterior, justamente, cuando llamas a "OpenFileConfig". Es decir, no se trata de que no puedas comparar dos cadenas, diría yo, sino que, el error se da al intentar usar "OpenFileConfig".

La verdad es que no estoy muy puesto en el tema. Se me ocurre que el "stdcall" no deba estar ahí, puesto que la función de la DLL retorna un "String". Tal vez sea que dicha función no debería retornar un "String", sino un "PChar", por lo que he dicho ahora mismo en este hilo, o acaso no basta con declarar como "externa" la función de marras, sino que, hay que "cargar" la DLL y buscar el procedimiento, antes de ejecutarlo...

Quizás algún otro compañero puede aportar alguna otra cosa al respecto.
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
Respuesta



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
No se ha llamado a Coinitialize ???? Juan Marcos Providers 11 05-12-2016 22:23:28
Imprimir dato en columnas diferentes según valor del dato saldanaluis Impresión 2 06-09-2007 00:17:32
Llamado a una función de una dll Ricardo León Varios 8 16-12-2005 16:53:08
No se ha llamado a CoInitialize. ElCherchu Conexión con bases de datos 1 21-02-2005 15:54:39
Llamado de formas malcantar Varios 6 15-07-2003 19:27:14


La franja horaria es GMT +2. Ahora son las 09:20:55.


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