Club Delphi  
    Paypal   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

Coloboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 28-03-2008
Avatar de cHackAll
[cHackAll] cHackAll is offline
Baneado?
 
Registrado: oct 2006
Posts: 2.159
Poder: 22
cHackAll Va por buen camino
No puedes usar un string en una DLL.

Caso
Ampliación

PD; cualquier funcion exportada en la DLL debe ser declarada con stdcall.

Saludos
Responder Con Cita
  #2  
Antiguo 28-03-2008
Avatar de Chris
[Chris] Chris is offline
Miembro Premium
 
Registrado: abr 2007
Ubicación: Jinotepe, Nicaragua
Posts: 1.678
Poder: 21
Chris Va por buen camino
Cita:
Empezado por cHackAll Ver Mensaje
No puedes usar un string en una DLL.

Caso
Ampliación

PD; cualquier funcion exportada en la DLL debe ser declarada con stdcall.

Saludos
No es que no se pueda, sino que simplemente, no deberías. En mi caso personal prefiero utilizar OleVariant en vez de String, o también puedes utilizar PAnsiChar.

Saludos.
__________________
Perfil Github - @chrramirez - Delphi Blog - Blog Web
Responder Con Cita
  #3  
Antiguo 28-03-2008
keyboy keyboy is offline
Miembro
 
Registrado: oct 2004
Posts: 367
Poder: 22
keyboy Va por buen camino
Cita:
Empezado por D&W Ver Mensaje
No es que no se pueda, sino que simplemente, no deberías.
Pues, ¿cuál es la diferencia? Cualquier acceso a una función que use string causará un error. Yo entonces lo interpreto como no se debe porque no se puede

Y bueno, también se puede recurrir ShareMem para poder usar el tipo string, auqnue eso obliga a redistribuir la librería borlndmm.dll.

Bye
Responder Con Cita
  #4  
Antiguo 28-03-2008
JOSEPE JOSEPE is offline
Miembro
 
Registrado: feb 2005
Posts: 45
Poder: 0
JOSEPE Va por buen camino
No necesariamente si se hace uso de FastMM.
Saludos,
JOSEPE
Responder Con Cita
  #5  
Antiguo 01-04-2008
robinsongm robinsongm is offline
Miembro
 
Registrado: sep 2004
Ubicación: Madrid, España
Posts: 25
Poder: 0
robinsongm Va por buen camino
hey...muchas gracias a todos por los comentarios!...

Da igual como declare los tipos en la dll, pero me interesa que en delphi sean Strings, pues son mensajes a mostrar a los usuarios...

Muchas gracias de nuevo!
__________________
Ni la utilidad del mentir es sólida, ni el mar de la verdad perjudica mucho tiempo.
Responder Con Cita
  #6  
Antiguo 26-02-2010
drkirocorp drkirocorp is offline
Registrado
 
Registrado: abr 2008
Posts: 8
Poder: 0
drkirocorp Va por buen camino
String y PChar en DLL y Delphi

Hola, aunque el hilo ya es viejo, algunos colegas lo ven por primera vez o por centésima vez jeje, encontré este ejemplo en donde se puede obtener un string desde la dll sin tener errores extraños, por si le sirve a alguien, saludos

///En la DLL---------------------------

library MyDLL;
uses
SysUtils;

const
AString: string = 'Hello world!';

function ReturnsAString: PChar;
begin
GetMem( Result, length( AString ) +1 );
StrPCopy( Result, AString )
end;

procedure FreeString( s: PChar );
begin
FreeMem( s )
end;

exports
ReturnsAString,
FreeString;

begin
end.

//En Delphi--------------------------------

procedure Button1Click( Sender: Object ); // or whatever
var
s: string;
p: PChar;
begin
p := ReturnsAString; // get the DLL's memory
s := p; // get a copy into our string
FreeString( p ); // return the DLL's memory
ShowMessage( s )
end;
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
Funcion para borrar la cadena que aparesca repetida dentro de otra cadena flystar Varios 1 02-07-2007 23:51:10
Funcion para buscar cadena dentro de otra cadena y el numero de veces flystar Varios 3 02-07-2007 22:48:08
Llamar de una función a otra jorgegetafe Varios 6 05-06-2007 15:53:19
¿Como llamar una funcion de una DLL? paty_rlopez Varios 3 26-06-2006 15:25:25
problema al llamar una función sgarrido Varios 3 27-07-2004 01:14:33


La franja horaria es GMT +2. Ahora son las 01:41:44.


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