Retrouver les fonctions, les procédures et différentes déclarations dans un fichier exécutable(DLL, OCX ou même EXE) nous permet de les utiliser et de connaître celles qui, jusqu'alors, nous sont inconnues. Tel est le but de ce bout de code.
Une ListBox nous affiche le CLSID du fichier, le CLSID de chaque classe contenue dans le fichier et les membres de chaque classe.
En plus, un fichier(appelé ici "Params.txt") est créé dans le dossier de l'application pour retrouver toutes les déclarations avec leurs types(de données).
Dans certains cas, le type n'étant pas connu, on met alors "As Unknown".
Lorsque les fonctions ne sont pas typées(ne se terminent pas par As 'Type'), elles seront traitées comme étant des procédures(Sub) et non ds fonctions(Function).
Les variables publiques sont répétées deux fois: une première fois précédée de "2" qui est la valeur de la constante "INVOKE_PROPERTYGET", une deuxième fois par "4" qui est la valeur de la constante "INVOKE_PROPERTYPUT". On n'en fera apparaître qu'une seule instance.
D'une façon générale, les paramètres des routines(Sub ou Function) sont passés par valeur(ByVal). C'est la technique adoptée ici.
Conclusion :
Reste à vérifier si certaines données sont des "Property" ou non ainsi que le type de certains d'entre elles et celui de certaines fonctions...
4 sept. 2009 à 10:13
4 sept. 2009 à 19:47
Pour ce qui est plantage en annulant le choix d'un fichier, est-ce lorsqu'on exécute le programme dans l'IDE ou bien le programme compilé ? Moi ça ne m'est pas arrivé...
5 sept. 2009 à 08:05
ça ne plante qu'en mode compilé seulement.
5 sept. 2009 à 23:54
A+
6 sept. 2009 à 13:04
Pour le copié/collé, en fait c'est tout le fichier Params.txt qui est utile, je n'avais pas vu ce fichier avant, mais c'est super comme ça (copier une seule ligne dans le presse papier n'est pas très utile).
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.