Importando librerías externas a Delphi






Normalmente al final de la librería viene creada la clase envoltorio para las interfaces, pero sino sabemos como hacerlo, lo tenemos que hacer de ésta manera:
Imaginad que queremos utilizar la interfaz IImageUploader que es la que nos permite subir las fotos a facebook. Pues bien, para poder utilizar ésta interfaz, debemos crear una clase y construir un objeto que envuelva ésta interfaz.
ésto lo conseguimos de la siguiente forma:
uses
comObj;
type
TFacebookCOMUploader = Class
class function Create: IImageUploader;
End;
class function TFacebookCOMUploader.Create: IImageUploader;
begin
Result := CreateComObject(CLASS_ImageUploader) as IImageUploader;
end;
Ahora, para utilizarlo solo tenemos que hacer:
uses
comObj, ImageUploaderControlLibrary_TLB;
procedure TForm1.Button1Click(Sender: TObject);
var
MyFacebookCOMUploader: IImageUploader;
begin
MyFacebookCOMUploader := TFacebookCOMUploader.Create;
Edit1.text := MyFacebookCOMUploader.GuiGraphicsVersion;
end;
En éste ejemplo sencillo simplemente recupero el valor de la versión del GUI, y lo vuelco en el edit1.text para mostrarlo por pantalla. Hay que tener en cuenta que tiene que coincidir la interfaz a llamar con su TGUID que es el valor que hay en el registro de windows. (Lo podemos buscar mediante el regedit).
Una vez hecho todo ésto, ya podemos trabajar con la librería externa utilizando un wrapper en delphi. En otro post os explicaré mejor lo de los COM Objects y como trabajar con ellos en Delphi, y de los DCOM también.
- Enlaces de interés:
y para importar una libreria que yo hice en Visual estudio como le hago
ReplyDeletehola necesito como importar una libreria que esta echo en VB.NET EN delphi como puedo hacer esto
ReplyDeleteDe la misma manera. Selecciona import .net assembly.
DeleteJordi