Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 03-07-2006
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.112
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Puedes incluir los prototipos de las funciones de la DLL dentro de la "interface" de la unidad en donde quieras utilizarlas. O, de otro modo, puedes incluirlas dentro de la "interface" de una determinada unidad creada a tal efecto. Luego podrías incluir dicha unidad en otras en donde quisieras hacer uso de las funciones en cuestión.

Por ejemplo, mira cómo añadirlas en una determinada unidad:

Código Delphi [-]
unit UMisFunciones;

interface

  {
    Declaraciones públicas de esta unidad
  }
  function MiFuncion(Variable: String): Integer; external 'MiLibreria.dll';
  procedure MiProced(Variable: String): String; external 'MiLibreria.dll';

implementation

end.

Luego podrías incluir la unidad "UMisFunciones" allí donde quisieras hacer uso de ella.

La siguiente es una unidad "real" que contiene una función que se encuentra en determinada DLL:

Código Delphi [-]
unit XpTheme;

interface

uses
  Windows;

  function IsThemeActive : BOOL; external 'uxtheme.dll' name 'IsThemeActive';

implementation

end.

En cualquier otra unidad podría hacer uso de la función "IsThemeActive" con solo añadir la unidad que la contiene:

Código Delphi [-]
uses
  XpTheme;

procedure TForm1.Button1Click(Sender: TObject);
begin
  if IsThemeActive then
    ShowMessage('El tema de Windows XP está activo')
  else
    ShowMessage('No hay ningún tema de Windows XP activo');
end;
__________________
David Esperalta
www.decsoftutils.com

Última edición por dec fecha: 03-07-2006 a las 23:06:55.
Responder Con Cita
  #2  
Antiguo 03-07-2006
Avatar de quinqui
quinqui quinqui is offline
Miembro
 
Registrado: jun 2006
Posts: 14
Poder: 0
quinqui Va por buen camino
muchas gracias, dec
lo acabo de probar, pero no me resulta pues el tipo de datos que devuelve una de mis funciones es TStrings y como el interface está antes de las clases, no me la reconoce! Buuaaaa T_____T snif...
Responder Con Cita
  #3  
Antiguo 03-07-2006
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.112
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Me adelanté editando mi mensaje, pero, fíjate en el mismo cómo es posible añadir antes de los prototipos de las funciones aquellas unidades que se precisen. En tu caso por lo menos la unidad "Classes", en donde se encuentra "TStrings".

Es decir, por ejemplo:

Código Delphi [-]
unit XpTheme;

interface

uses
  Windows; // Añadimos las unidades que nos sean menester

  function IsThemeActive : BOOL; external 'uxtheme.dll' name 'IsThemeActive';

implementation

end.
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #4  
Antiguo 03-07-2006
Avatar de quinqui
quinqui quinqui is offline
Miembro
 
Registrado: jun 2006
Posts: 14
Poder: 0
quinqui Va por buen camino
Ohhh ahora no me mandó ese error o sea, no se me cae al compilar, pero... sí me mandó un error fatal al ejecutar la aplicación T____T
"La aplicación no se ha podido inicializar correctamente (0xc000007b). Haga clic en Aceptar para terminar la aplicación"!!! O___O
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
Llamando por Telefono ASAPLTDA OOP 0 22-01-2005 00:26:50


La franja horaria es GMT +2. Ahora son las 17:17:34.


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