begin process at 2012 05 29 05:23:42
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C++ & C++ .NET

 > 

Algorithme

 > 

Maths

 > 

exemple de creation et utilisation d'un simple dll .


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

exemple de creation et utilisation d'un simple dll .

mardi 3 mars 2009 à 00:46:26 | exemple de creation et utilisation d'un simple dll .

bonapart002

Bonjour:
je suis débutant en c++ .je travail  avec Borland C++ 5.01.
je veux créer une dll puis l'utiliser dans un programme .pour cela j'ai crée  un projet (Dynamic Library (.dll))
le dll contient un fonction factorielle son code est :
-------------factorielle.cpp-------------------------
#include <windows.h>
BOOL APIENTRY DllMain( HANDLE hModule,
DWORD ul_reason_for_call,
LPVOID lpReserved
)
{
return TRUE;
}
extern "C" __declspec(dllexport) unsigned long int factorielle(int n)
{
unsigned long int resultat = 1;
if(n < 0)
return -1;
if(n == 0)
return 1;
for(; n > 0; n--)
resultat *= n;
return resultat;
}


----------------------------------------
puis j'essayé de compiler  (project->build all) ce code  pour  obtenir un fichier .lib ainsi qu'un .dll .mais m'afiche une erreur ."declaration syntaxe error ".
1ere question : c quoi cette erreur (j'ai bien placer le  .def  dans  le repertoire de projet)?

puis je veux creer un simple programme console qui utilise cette dll par exemple pour calculer le factorielle de 5 .le code est :
---------------------monprog.cpp----------------------------------------
#include<windows.h>
#include<stdio.h>
#include<conio.h>
#pragma comment (lib, "dll_factorielle.lib")
extern "C" __declspec(dllimport) unsigned long int factorielle(int n);
void main()
{
int x;
x=factorielle(5);
printf("fact = %d",x);
getch();

}

 ---------------------------------------------------------------------------

2 eme question :est ce que c correcte  ce code ou non (  sans .dll  je peut pas le compiler )?


         et merci pour votre aide .

mercredi 4 mars 2009 à 20:21:34 | Re : exemple de creation et utilisation d'un simple dll .

rt15

Membre Club Administrateur CodeS-SourceS
Réponse acceptée !
Salut,

A vu de nez je ne vois pas le problème... Le .def est redondant avec __declspec(dllexport).

Un tuto sur les dll et C++ Builder.

jeudi 5 mars 2009 à 01:56:57 | Re : exemple de creation et utilisation d'un simple dll .

bonapart002

ok merci
maintenant ce code fonctionne bien
juste j'ai une pb pendant la génération de de la .dll et de .lib
le borland génère le fichier .dll mais ne génère pas le fichier .lib
cette commande permet  de generer un fichier lib apartir d'une dll :

    c:>BC5>BIN>   implib -a -c  monlib.lib  mmondll.dll

mais si je le  teste il ne comprend pas le   -a

 

 


jeudi 5 mars 2009 à 09:07:33 | Re : exemple de creation et utilisation d'un simple dll .

rt15

Membre Club Administrateur CodeS-SourceS
Réponse acceptée !
Salut,

Pourquoi mettre ces options s'il ne les connais pas ?

Tu as fait un :
implib /?

Un peu d'aide sur implib.


Cette discussion est classée dans : code, int, dll, include, factorielle


Répondre à ce message

Sujets en rapport avec ce message

Difference [ par xionoxid ] C'est koi la difference entre time (0) et time (NULL) les 2 font des nbr aleatoire !??#include #include #i GetAsyncKeyState [ par sebleboss2002 ] Bon, c'est encore moi, ce coup-ci, j'ai trouvé (plus ou moins) comment faire ce que je voulais :#include #include <br Utilisation DLL SANS .lib [ par nasedo47 ] J'ai récupéré une DLL sur un site ainsi qu'une page avec les prototypes de toutes les fonctions contenues dans cette DLL.J'aimerais utiliser ces fonct problème de char [ par minet03 ] Coucoutout le monde, tout d'abord voilà mon code :#include #include #include #include #include #include char *bin_dec(char *binai Appel d'une fonction contenue dans une dll [ par ybuchheit ] Bonjour, je souhaiterais appeler une fonction contenue dans une dll. Je n'ai pas le source de cette dll, le seul fichier dont je dispose est le .dll Créer une dll en C avec Code::Blocks [ par seb5 ] Salut à tous,Je souhaite placer certaines de mes fonctions dans une dll pour pouvoir les réutilisé dans plusieurs programmes. Je programme en C sous W Prob avec les variables [ par Ilsundal ] Bonjour a tous,voila mon probleme, j'ai declaré une variable, mais quand je lui assigne par exemple  : MAISON, il m'affiche que M. comment faire pour Deboguer un code [ par ptit programeur ] bonjours je voudrais savoir pourquoi ce code est faux#include #include using namespace std; int main(int argc, char *argv[]){  long triple (long probleme création d'une clé de registre [ par stefbuet ] Salut, en regardant les sources du site, j'ai réussi à extraire un pti bou de code mais sa ne marche pas completement:en effet, le chemin mycompagny/m La condition IF [ par lunnatick ] Bonjour, j'ai essayer de compiler le code source suivant: [code]#include #include int main(int argc, char *argv[]) { long age = 20; if (a


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,343 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales