ATOUTFOX
COMMUNAUTÉ FRANCOPHONE DES PROFESSIONNELS FOXPRO
Visual FoxPro : le développement durable

Version 3.14159 du décompilateur DVFP   



L'auteur

Robert Plagnard
France France
Membre Simple
# 0000000031
enregistré le 15/10/2004

http://www.ingelog.fr
PLAGNARD Robert
75015 PARIS
de la société IngéLog
Fiche personnelle


Note des membres
pas de note

Contributions > 21 - Outils

Version 3.14159 du décompilateur DVFP
# 0000000920
ajouté le 13/06/2016 17:48:25 et modifié le 13/06/2016
consulté 10138 fois
Niveau expert

Version(s) Foxpro :
VFP 9.0
VFP 8.0


Télécharger le ZIP (266.11 Ko)
Description
Suite aux remarques judicieuses de Francis Faure, la version 3.14159 de DVFP corrige des erreurs qui étaient restées dans la décompilation des instructions "on".

Incidemment au passage, je pense avoir découvert un petit bug de VFP, la simple instruction:
ON PAD MenuTitleName OF MenuBarName1   ACTIVATE MENU menu2
n'est pas bien compilé par VFP. Il suffit de regarder le fxp généré. La fin de l'instruction annonce une chaine de caractère de longueur 5 ("menu2") mais il n'y a que 4 caractères stockés, ce qui fait que l'instruction est incorrecte. On peut s'en assurer en examinant le fxp avec PS Pad Hex. Il est donc normal que le décompilateur bute sur cette mauvaise compilation.




Code source :
*/* c_on_bug.fxp
*   debMain at offset 0x00000025
*   1 procs in ProcTable at offset 0x00000000
*   IDK1=61 IDK2=2 IDK3=0
*                                       0x00000025 0 -1
*/------------------------------------------------------------------------------
*/ c_on_bug.fxp
*/------------------------------------------------------------------------------
*  L=23, 2 variables :
*  0000 Menutitlename
*  0001 Menubarname1
   * 31 BC F7 00 00 C3 F7 01 00 BC FB 05 00 6D 65 6E 75 FE
   on pad Menutitlename of Menubarname1 activate 05 00 6D 65 6E 75 FE
   * 55


*   0 classes in ClassTable at offset 0x00000000
Commentaires
le 13/06/2016, Francis Faure a écrit :
Waow, pour un petit problème signalé hier : une mise à jour aujourd'hui ! Bravo Robert.

Pour le bug sur ACTIVA MENU : il est violen car au mieux en compilation/exécution on a un message mauvais fxp mais généralement une C000005... !

Concernant le ByteCode généré par VFP : non seulement il manque un caractère mais il semble qu'il manque le token T_MENU Egalement. Le même test sur ACTIVATE POPUP fonctionne bien lui.

Cordialement
Francis

le 23/08/2016, eddymaue a écrit :
Bien a vous M Plagnard

pouvez-vous soumettre une solution correctrice ?

le 09/11/2016, eddymaue a écrit :
La version PI

www.atoutfox.org - Site de la Communauté Francophone des Professionnels FoxPro - v3.4.0 - © 2004-2024.
Cette page est générée par un composant COM+ développé en Visual FoxPro 9.0-SP2-HF3