Juste une question : Comment exporter des procedure Overload depuis une Dll ?
Faut ils obligatoirement les renomer pour qu'elles soient uniquent ?
Juste une question : Comment exporter des procedure Overload depuis une Dll ?
Faut ils obligatoirement les renomer pour qu'elles soient uniquent ?
Je crois que le seul moyen est de les exporter sous des noms différents (avec la directive name dans exports).
De toutes façons il est impossible d'exporter plusieurs routines sous le même nom, donc...
sjrd, ancien rédacteur/modérateur Delphi.
Auteur de Scala.js, le compilateur de Scala vers JavaScript, et directeur technique du Scala Center à l'EPFL.
Découvrez Mes tutoriels.
Oki .. j'ai pas pense a ca. .... ca devrais le faire.
Peut m'importe le nom d'export/import ..... tant que cote Dl let Exe j'utilise des noms similaires ..... les Overload c justes des facilités de codages. D'ailleur, je viens depese que je n'ai meme pas besoin de les exporter a partir de fonctio nde meme nom . .C juste lors de l'utilisation cote dev qu'il est plus facile de les gerer sous forme de fonctions Overload.
Est-e que tu peux faire les overload lorsque tu les charges en mettant le même nom avec name? Si tu les charge statiquement bien entendu...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 function Proc(ParamsA):...;external 'MaDLL.dll';stdcall;name 'Proc1';overload; function Proc(ParamsB):...;external 'MaDLL.dll';stdcall;name 'Proc2';overload;
Pedro
Aucune réponse aux sollicitations techniques par MP
Faut pas attendre d'en avoir besoin pour s'en servir... (Lucien Stéphane)
Les pages Source C'est bon. Mangez-en!
Le défi Delphi
Règles du forum - FAQ Delphi - Pensez au chtit
Aéroclub Bastia Saint-Exupéry
Pas eu le temps de tester .. mais je vois pas pkoi ca marcherais pas.....
Je vosu dis ca demain ;p
Si, tu peux exporter des fonctions portant le même nom et déclarées overload d'une DLL.
Par exemple
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 procedure xaero(a:integer);overload; begin end; procedure xaero(a:integer;b:char);overload; begin end; exports xaero(a:integer), xaero(a:integer;b:char);
Je n'ai pas eu l'occasion de tester, mais je veux bien te croire. Mais dis-moi alors un peu comment fais-tu pour les importer dans l'exe. Si possible donne-moi une méthode statique (external) et une dynamique (LoadLibrary et Co.).
Ca pourrait intéresser la FAQ![]()
sjrd, ancien rédacteur/modérateur Delphi.
Auteur de Scala.js, le compilateur de Scala vers JavaScript, et directeur technique du Scala Center à l'EPFL.
Découvrez Mes tutoriels.
Partager