Bonjour,
Avec l'aide et les conseils de quelques uns d'entre vous qui se reconnaitront, j'ai enfin finalisé la réécriture d'un programme avec FMX.
Tout est opérationnel et j'ai appris plein de choses.. > mission accomplie .
Sauf que ... C'est la tuile ! Je viens découvrir que mon programme ne se lance QUE sur ma machine. (Win 10 en machine virtuelle).
Mon windows est une version Windows PRO 10 et je n'ai rien installé d'autre que Delphi. ( pas de DLL rajoutée ou autre extension quelconque )
Sur les 5 PC ou j'ai pu tenter le lancement j'ai le même message d'erreur :
Après quelques recherches, dont certaines me mènent sur ce cher forum, je décide d'installer MADEXCEPT pour en savoir un peu plus.
Je recompile donc le projet et je vire mon fils de sa partie de Fortnite ( çà ne lui fera pas de mal ) puisque c'est le seul PC Windows de la maison.
Voici un extrait du rapport d'erreur :
exception number : 1
exception class : EAccessViolation
exception message : Violation d'accès à l'adresse 00A58C2B dans le module 'SMTS_FMX.exe'. Lecture de
l'adresse 0000000C.
main thread ($1ddc):
00a58c2b +003 SMTS_FMX.exe FMX.Forms 2414 +1 TFormBorder.GetSupported
et enfin :
disassembling:
00a58c28 public FMX.Forms.TFormBorder.GetSupported: ; function entry point
00a58c28 2413 push ebx
00a58c29 mov ebx, eax
00a58c2b 2414 > cmp byte ptr [ebx+$c], 0
00a58c2f jz loc_a58c5e
00a58c31 mov eax, [ebx+8]
00a58c34 cmp dword ptr [eax+$c8], 0
00a58c3b jz loc_a58c5e
00a58c3d mov eax, [ebx+8]
[...]
Il semble donc, à moins que je n'ai rien compris ce qui est probable, que le problème se produise lors de la création de la form principale.
Malheureusement je ne sais pas quoi faire de cette information et encore moins comment la résoudre.
Je ne comprend pas la différence entre mon OS qui lance sans problème le programme ( que çà soit depuis l'EDI ou depuis le .EXE compilé ) et les autres OS qui n'en veulent pas.
Pouvez vous me guider dans la recherche du problème ?
Merci encore.
Partager