begin process at 2012 05 29 11:03:20
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Au secours

 > 

dll étrangère


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

dll étrangère

lundi 8 août 2005 à 11:03:37 | dll étrangère

georgeduke

Bonjour,

Je n'arrive pas à utiliser les fonctions d'une dll "étrangère" ; cette dll s'appelle rw_data.dll, je n'ai que ce fichier : donc pas de *.lib ou de *.def

Le LoadLibrary fonctionne, mais je n'arrive pas à accéder à la fonction qui m'intéresse...ImpFuncDLL est toujours null :-(

typedef DWORD (__stdcall *MYDLLFUNC) (char* FileName);

void monter_dta()
{
     HINSTANCE hinstDLL;
    MYDLLFUNC ImpFuncDLL;
    DWORD Result;
    if ((hinstDLL=LoadLibrary("rw_data.dll")))
    {
        ImpFuncDLL = (MYDLLFUNC)GetProcAddress(hinstDLL, "dtaCreate");
        if (ImpFuncDLL != NULL)
            {
            printf("Appel de la fonction dtaCreate\n");  
            ImpFuncDLL("A9.dta");
             }
      //liberation de la dll
     FreeLibrary(hinstDLL);
        }
}


J'utilise DevC++  et je ne voulais savoir si c'était mon code qui clochait ou le fait que je ne dispose pas d'un fichier *.def ou autre...

Merci beaucoup pour votre aide
lundi 8 août 2005 à 11:06:46 | Re : dll étrangère

BruNews

Administrateur CodeS-SourceS
tu as bien exporté en extern "C" et __stdcall ?

ciao...
BruNews, MVP VC++
lundi 8 août 2005 à 11:19:25 | Re : dll étrangère

georgeduke

Cette dll n'est pas de moi malheureusement donc je ne sais pas si ça a été fait..

C'est une dll d'un jeu, j'ai trouvé toutes les infos sur ces fonctions grâce à cette page : http://www.kamalook.de/Mafia/DTA.html

Une idée ??
lundi 8 août 2005 à 11:42:15 | Re : dll étrangère

DeAtHCrAsH

As tu pensé à verifier la syntaxe de la fonction ???
Il y a souvent ce problème avec les appelles de fonction a partir de DLL, les param sont mauvais.

Shell
lundi 8 août 2005 à 12:45:33 | Re : dll étrangère

georgeduke

Oui j'ai vérifié la syntaxe de la fonction : DWORD dtaCreate(char* FileName);

Elle correspond bien à ma description faite dans mon code... Je ne comprends pas...
lundi 8 août 2005 à 12:58:50 | Re : dll étrangère

BruNews

Administrateur CodeS-SourceS
Réponse acceptée !
D'après la description, l'export ne me parait ni "C" ni __stdcall mais C++ standard, surement pour cela que le compilo ne trouve pas la fonction car son nom est "décoré". Teste en compilant C++ et fais un header h sans extern "C".

ciao...
BruNews, MVP VC++
lundi 8 août 2005 à 13:34:33 | Re : dll étrangère

simtiers

Réponse acceptée !
Sinon, essaie de retrouver le logiciel Depends (gratos) :
http://www.dependencywalker.com/

Ce logiciel list toutes les fonctions exportées par une DLL (sans les paramètres par contre)
Mais c'est bien le nom "décoré" qui est indiqué...
lundi 8 août 2005 à 13:37:38 | Re : dll étrangère

georgeduke

Merci beaucoup, vos réponses me redonnent un peu d'espoir.. y a plus qu'à essayer ;-)


lundi 8 août 2005 à 14:08:47 | Re : dll étrangère

DeAtHCrAsH

J'ai pu voir sur le site du gars, qu'il y a son mail d'indiqué au cas de problème de l'utilisation de la DLL.
Tu peux toujours essayé de lui en envoyé un.

Shell
lundi 8 août 2005 à 14:10:36 | Re : dll étrangère

georgeduke

Oui ça fonctionne !! Merciiiiiii !! Le logiciel que tu m'as indiqué est impressionnant !! Le nom de la fonction est bien décoré ; en fait elle s'appelle _dtaCreate@4 ! Maintenant je vais pouvoir essayer de l'utiliser :-)

1 2

Cette discussion est classée dans : dll, étrangère, impfuncdll, hinstdll, mydllfunc


Répondre à ce message

Sujets en rapport avec ce message

API32 Windows et appel DLL [ par ArthurAuguste ] Bonjour, Je voudrais, depuis mon programme principal lancer une fonction qui se trouve dans une dll en lui passant un paramètre. Tout d’abord quand je Lancer une dll par un exe [ par ArthurAuguste ] Question qui doit paraître évidente pour un non débutant: J’ai écrit une dll qui fonctionne et que je lance actuellement sans problème par : rundll32 Problème de retour de dll sous l’API32 [ par ArthurAuguste ] J’ai un .exe (une fenêtre) qui tourne donc avec quelque part une boucle : while( GetMessage( &message, NULL, 0, 0)) { TranslateMessage( &message ); Toujours à propos des DLL [ par ArthurAuguste ] J’aurais besoin d’une explication sur le fonctionnement des dll. Voila, dans mon programme principal qui est une simple fenêtre avec une boucle habitu Compilation DLL [ par anjopa ] Bonjour, J'ai un soucis avec un bout de code qui fonctionne dans visual studio 6 mais pas dans visual studio 2010... Voici le code : MATRIXDLL_API Mode release [ par galax98 ] Bonjour Je travaille sous Visual c++ 2008 Express et j'ai 2 petites questions J'ai fait une application qui utilise une dll. Ayant besoin de faire q Utilisation Dll C# dans Appli C++ [ par romain60112 ] Bonjour à tous, Je souhaite utiliser une DLL C# dans une application C++. Dans mon fichier principale je déclare : #using "MaDLL.dll"("MaDLL.dll" ce gcc et dll [ par ayarikhaoula ] salut le monde, je développe une application en c sous wind avec comme compilateur gcc et MinGW. maintenant aprés avoir générer monfichier.c et monfic Explorer le code d'une DLL [ par JSilvere ] Salut, J'essaie depuis plus d'un mois d'utiliser une DLL pour un de mes programmes, mais ceux en vain, je tâtonne et avance au rythme d'une limace. MouseHook avec DialogBox [ par mouloudh ] bonjour, j'ai récupéré le code source [b]Distance parcourrue par la souris (win32, hook)[/b]sur forumcpp. Je cherchais depuis un moment déjà quelque c


Nos sponsors


Sondage...

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,686 sec (3)

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