Bonjour à tous !
Sur différents ordinateurs, j’ai effectué une série de tests de mon éditeur EliP.
Peu importe le PC utilisé, j’ai parfois un plantage lors du lancement de l’exécution d’un source.
Afin d’éliminer une éventuelle erreur dans le codage de l’éditeur, j’en ai créé un autre que j’ai appelé
Pico_editeur : il ne comprend qu’un objet SYNEDIT et un bouton « RUN ».
Le source de Pico_editeur :
- Code:
-
LABEL Run
DIM a$,b$
BUTTON 1
CAPTION 1,"Run"
SYNEDIT 2
TOP 2,100
HEIGHT 2,300
WIDTH 2,400
ITEM_ADD 2,"BUTTON 1"
ITEM_ADD 2,"END"
ON_CLICK 1,Run
END
Run:
a$ = "Panoramic_Temp.bas"
b$ = "Panoramic_Temp.exe"
FILE_SAVE 2,a$
EXECUTE_WAIT "Make_Exe.exe| -e "+CHR$(34)+a$+CHR$(34)
EXECUTE b$
RETURN
Image de Pico_editeur :
Ce pico_éditeur est pré-chargé d’un source de deux lignes :
- Code:
-
BUTTON 1
END
=> Lors de l’appui sur le bouton RUN, parfois le système se plante et il apparaît cette fenêtre :
Remarques :
- La défaillance est identique si je substitue dans la ligne 7 de Pico_editeur, l’objet SYNEDIT par un MEMO.
- La défaillance est identique si je substitue dans la ligne 23 de Pico_editeur, la commande EXECUTE par un EXECUTE_WAIT
- Lors du plantage, les fichiers Panoramic_temp.bas et Panoramic_temp.exe ont bien été créés et sont corrects.
- Les adresses hexadécimales renseignées par le message d’erreur semblent être toujours les mêmes, peu importe l’ordinateur ou l’OS utilisé.
- En acquittant le message d’erreur, il subsiste une instance
Panoramic_temp.exe "fantôme" (rien de visible à l'écran) qu’il faut tuer dans le
gestionnaire de tâches de Windows.
-
Suivant la configuration du PC utilisé, l'instance Panoramic_temp.exe peut occuper plus de 40 % du CPU.
- Dans les éditeurs alternatifs, l’enchainement des lignes
EXECUTE_WAIT "Make_Exe.exe| -e "+CHR$(34)+a$+CHR$(34)
EXECUTE_WAIT b$entraîne
systématiquement une activité anormale de la CPU, qui peut atteindre 40 % suivant la configuration du PC, même si le source exécuté est un simple FORM vide.
Y aurait-il un bug dans Make_exe.exe ?
Bonne journée à tous !
EDIT : Y aurait-il un bug dans Make_exe.exe
ou dans la commande EXECUTE / EXECUTE_WAIT ?