OVH Cloud OVH Cloud

API Win32 et Menu

4 réponses
Avatar
Michaël Alves
Bonjour à tous,

J'aimerai savoir si l'un d'entre vous peut m'aider. Je dois effectuer
une série de tests sur une application et j'aimerai, pour rendre ceux ci
plus performants, récupérer le 'caption' de l'arborescence de menu
principal (Fichier, édition, etc...).

Est-il possible avec l'API windows de récupérer tout ses captions sur
une appli compilé ? Le but est de créer un fichier XML décrivant le menu
principal.

Merci de votre aide.

4 réponses

Avatar
Patrick Philippot
Bonjour,

Est-il possible avec l'API windows de récupérer tout ses captions sur
une appli compilé ? Le but est de créer un fichier XML décrivant le
menu principal.



Si le menu est décrit sous forme de ressource, il suffit de décompiler les
ressources. Avec Visual Studio 6, par exemple, on peut charger un exe dans
l'environnement et demander à décompiler les ressources. Sinon, il y a des
outils pour ça disponibles sur le Web (Google: "resource decompiler").

Par contre, si les menus sont construits dynamiquement ou si les intitulés
sont spécifiés dynamiquement, cela ne fonctionnera pas.

Par ailleurs, beaucoup de programmes vont chercher leurs ressources dans une
DLL spécifique au langage choisi par l'utilisateur (DLL de ressources
seules). Dans ce cas, c'est dans la DLL qu'il faut aller rechercher les
ressources.

Enfin, notez que cette opération de reverse engineering sur les ressources
est le plus souvent interdite pas la licence du logiciel.

--
Patrick Philippot - Microsoft MVP
MainSoft Consulting Services
www.mainsoft.fr
Avatar
Michaël Alves
>
Enfin, notez que cette opération de reverse engineering sur les ressources
est le plus souvent interdite pas la licence du logiciel.




Le logiciel est développé par la société dans laquelle je travail donc
pas de soucis niveau license. L'application est développé en delphi, et
le menu est décrit dans un fichier nfm. Chaque item du menu est associé
à une action qui décrit elle même le caption.

J'ai pensé à parser ses fichiers mais je ne pense pas que se soit une
bonne idée vu la "compléxité" du format des fichiers en question.

J'ai donc pensé à utiliser l'API Win32 pour récupérer les captions de
chaque Item (c'est un peu bete sachant que l'on a le code source mais
bon...).

Je vais essayer de chercher encore un peu, sinon je vais opter pour le
parsing des fichiers .nfm malgrès que je sois un peu rétissant.

Merci :)
Avatar
Patrick Philippot
Michaël Alves wrote:
Le logiciel est développé par la société dans laquelle je travail donc
pas de soucis niveau license.



Dans ce cas, vous disposez des sources et surtout des spécifications. Il y a
sûrement un document qui décrit l'interface utilisateur. Ou bien faites vous
de la "post documentation" :-) ?

--
Patrick Philippot - Microsoft MVP
MainSoft Consulting Services
www.mainsoft.fr
Avatar
Christian ASTOR
Michaël Alves a écrit :

Est-il possible avec l'API windows de récupérer tout ses captions sur
une appli compilé ? Le but est de créer un fichier XML décrivant le menu
principal.



GetMenuItemCount()-GetMenuItemInfo() en récursif.