Exporter une fonction api avec delphi.net

====
Il nous faudra ici une version de Delphi 2005 (avec le framework 1.1). La version personnelle est disponible en téléchargement et conviendra a ce tutorial

II.Création du projet

Ouvrir Delphi 2005.Créer un nouveau projet Delphi.NET (Fichier->Nouveau->Autre->Projet Delphi pour .NET) et sélectionner Bibliothèque.

Au-dessus de "uses",on rajoute la directive {$UNSAFECODE ON}

puis on crée une procédure:

procedure SayHello;
begin

Show('I am a test');

end;

et ensuite,on met

exports
  SayHello;

On enregistre le projet,on le compile,et on copie la dll obtenue dans le répertoire C:\

Maintenant,le moment est venu de tester notre DLL...

Pour cela,on va dans Démarrer,Exécuter et on tape

      rundll32 C:\nom_de_votre_dll.dll SayHello

et,après quelques secondes d'attente (on est en managé,quand même!),on a normalement une boîte de message contenant "I am a test" qui s'affiche !

III.Le code complet

Je mets ici le code au complet du projet (il y a juste le .dpr...).
Le code à saisir est en gras

library Library1;

uses
  SysUtils,
  Classes,
  System.Reflection,
  System.Runtime.InteropServices;

[assembly: AssemblyTitle('') *
[assembly: AssemblyDescription('') *
[assembly: AssemblyConfiguration('') *
[assembly: AssemblyCompany('') *
[assembly: AssemblyProduct('') *
[assembly: AssemblyCopyright('') *
[assembly: AssemblyTrademark('') *
[assembly: AssemblyCulture('') *

procedure SayHello;
begin

Show('I am a snail');

end;
exports
  SayHello;

[assembly: AssemblyVersion('1.0.*') *

[assembly: AssemblyDelaySign(false) *
[assembly: AssemblyKeyFile('') *
[assembly: AssemblyKeyName('') *

 

Adresse d'origine

Ce document intitulé « Exporter une fonction api avec delphi.net » issu de CodeS SourceS (codes-sources.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.