Bonjour,
Je suis à la recherche de la fonction Delphi (ou API Windows) qui permet de récupérer
le nom réel d'un module chargé.
Le contexte est le suivant :
J'ai une DLL "c:\temp\MaDLL.dll" obtenue par compilation du projet delphi "MaDLL.dpr"
Je renomme ce fichier en "c:\temp\DLL_V150.dll" .
Je charge cette DLL depuis mon programme principal et j'essaie de récupérer son nom :
Au retour de l'appel à "getNomLib" la variable "nom" vaut : 'c:\temp\DLL_V150.dll'
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 procedure getNomLib(var nom:string); var hd:THandle; nom:string; begin hd:=loadLibrary('c:\temp\DLL_V150.dll'); nom:=getModuleName(hd); end;
Dans l'IDE Delphi on peut voir la liste des modules : "Fenêtre de débogage>>Modules"
Cette liste se présente sous forme d'une table. Pour ce qui est de ma librairie je vois les
informations suivantes :
|NOM | CHEMIN |
|MaDLL.dll | c:\temp\DLL_V150.dll |
Et donc, je pense qu'il est possible de récupérer le nom réel de ma dll "MaDLL.dll" depuis mon programme principal, qu'en pensez-vous ?
Partager