Connaitre toute les fonctions d'une DLL [Résolu]

cs_askil2000 98 Messages postés lundi 8 mars 2004Date d'inscription 12 avril 2010 Dernière intervention - 15 janv. 2007 à 21:48 - Dernière réponse : elguevel 735 Messages postés jeudi 19 décembre 2002Date d'inscription 22 novembre 2016 Dernière intervention
- 16 janv. 2007 à 13:53
Bonjour,

Certe, j'ai déja travaillé avec des DLL, mais je connaissais leurs fonctions et donc les appelais de manière dynamique.

exemple :

type
  TMyDll = function(username,password,seed,result_6,result_96 :pchar;challengemode : Boolean): boolean ; stdcall;

  Handle: THandle;
  MyDll: TMyDll;
  Dll : PChar;

Dll := Pchar(ExtractFilePath(Application.ExeName)+'\madll.dll');

Handle := LoadLibrary (Dll);
  if Handle <> 0 then
  begin
    try
     @MyDll := GetProcAddress(Handle, Pchar('YMSG12_ScriptedMind_Encrypt'));
      if @MyDll <> nil then
      begin
result := MyDll(pchar(UserName), pchar(PassWord), pchar(ChallengeString), pchar(RString1), pchar(RString2), Mode);

end
      else result := false;
   Finally
      FreeLibrary(Handle); //Assure le déchargement de la dll
   end;

/////////////////////////

en revange quand on ne connais pas les fonctions d'une DLL ?
j'aimerais pouvoir la sonder ? c possible ?
Afficher la suite 

Votre réponse

3 réponses

Meilleure réponse
f0xi 4304 Messages postés samedi 16 octobre 2004Date d'inscription 9 mars 2018 Dernière intervention - 15 janv. 2007 à 23:48
3
Merci
alors le probleme, c'est qui oui on peu voir grace par exemple a DLLEXPORT  de Nir Sofer ( http://www.nirsoft.net )
on peu voir le nom de toute les methodes exportées de la librairie.
mais par contre on ne peu jamais voir les parametres, a moins d'avoir un SDK sous la main ou un fichier d'aide.

<hr size="2" width="100%" />Croc (click me)

Merci f0xi 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 101 internautes ce mois-ci

Commenter la réponse de f0xi
Meilleure réponse
elguevel 735 Messages postés jeudi 19 décembre 2002Date d'inscription 22 novembre 2016 Dernière intervention - 16 janv. 2007 à 13:53
3
Merci
Pour pas te faire chier tu peux aussi faire comme moi pour declarer une DLL :



function
YMSG12_ScriptedMind_Encrypt
(username,password,seed,result_6,result_96 : PChar; challengemode : Boolean ) : Boolean ; stdcall; external 'madll.dll';

Sinon oui c'est possible de voir les fonctions d'une DLL mais pas les paramètres. (Avec delphi il existe un executable "tdump.exe" qui permet de voir les differentes fonctions et DLL utilisé par un autre executable).

Bon Code.

Merci elguevel 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 101 internautes ce mois-ci

Commenter la réponse de elguevel
cs_askil2000 98 Messages postés lundi 8 mars 2004Date d'inscription 12 avril 2010 Dernière intervention - 16 janv. 2007 à 00:55
0
Merci
Merci f0xi !

c'est se qu'il me fallait :o)
Commenter la réponse de cs_askil2000

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.