Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

J'ai une variable fantôme !!!

5 réponses
Avatar
surfeur75
Bonsoir,

J'ai une variable fantôme, enfin, son contenu... Bon, j'ai déjà
rencontré ce genre de problème, mais ce soir je pose la question,
habituellement je ne contrarie jamais l'ordinateur, je double la variable en
la chargent dans une autre et ça marche, ça pourrait s'appeler "bug", voici:

J'ai une variable de type public, soit
Public perso
Cette variable se charge dans une form, et revient ensuite à l'appelante,
elle est ok à ce stade, je l'appelle juste par son nom dans sa form de
création "perso", alors que dans les autres forms, je l'appelle
"form1.perso"), ensuite elle fait quelques pérégrinations, avant que je
lance le Timer et que je rende la main, c'est là qu'intervient le mystère:
A l'origine ça ne marchait pas comme prévu à cause de cette variable, alors
je l'ai testé par un MsgBox, et quand je l'ai testé elle était ok, et tout
marchait, mais si j'inhibais le MsgBox, ma variable se vidait, lol, c'est
pas une plaisanterie, ça fait comme s'il y avait un chevauchement en Ram, ou
un dépassement de segment, bref, un bug... Avez-vous une idée ???
Merci.
--
@+, bye, Joe.
Pour m'écrire ng75AROBASEnoosPOINTfr
remplace AROBASE et POINT par leur vrai signe
Il l'a fait car il ne savait pas que c'était impossible, alea jacta est!

5 réponses

Avatar
Fabien
j'ai déja rencontré ce problème aussi ...
cela venait d'un décallage entre le mode pas à pas et l'exécution réèlle.
Le déroulement n'était pas la meme et une fonction passait avant une autre.
La seule facon de corriger cela est de modifier ton approche au problème qui
est tangencieux.

sinon pister ta variable via le débuggereur ou via des valeurs déterminée
dans chaque endroit ou tu l'as modifie

Désolé de ne pas pouvoir faire plus.

"surfeur75" a écrit dans le message de
news:
Bonsoir,

J'ai une variable fantôme, enfin, son contenu... Bon, j'ai déjà
rencontré ce genre de problème, mais ce soir je pose la question,
habituellement je ne contrarie jamais l'ordinateur, je double la variable


en
la chargent dans une autre et ça marche, ça pourrait s'appeler "bug",


voici:

J'ai une variable de type public, soit
Public perso
Cette variable se charge dans une form, et revient ensuite à l'appelante,
elle est ok à ce stade, je l'appelle juste par son nom dans sa form de
création "perso", alors que dans les autres forms, je l'appelle
"form1.perso"), ensuite elle fait quelques pérégrinations, avant que je
lance le Timer et que je rende la main, c'est là qu'intervient le mystère:
A l'origine ça ne marchait pas comme prévu à cause de cette variable,


alors
je l'ai testé par un MsgBox, et quand je l'ai testé elle était ok, et tout
marchait, mais si j'inhibais le MsgBox, ma variable se vidait, lol, c'est
pas une plaisanterie, ça fait comme s'il y avait un chevauchement en Ram,


ou
un dépassement de segment, bref, un bug... Avez-vous une idée ???
Merci.
--
@+, bye, Joe.
Pour m'écrire ng75AROBASEnoosPOINTfr
remplace AROBASE et POINT par leur vrai signe
Il l'a fait car il ne savait pas que c'était impossible, alea jacta est!






Avatar
surfeur75
Ouais, ben merci, ça me fait chaud de savoir que je ne suis pas le seul,
sinon, si personne n'a de réelle solution, je verrais demain, mais je crois
que je vais tout simplement la doubler ma variable, généralement ça marche
en faisant ça, je l'ai déjà un peu pisté, mais je ne veux pas y passer ma
vie... Par contre, ce que tu dis sur la différence entre le mode
interprétation et exécution, oui, j'ai aussi vu parfois des décalages, mais
là, je suis resté en mode interprétation, et j'ai le bug...
--
@+, bye, Joe.
Pour m'écrire ng75AROBASEnoosPOINTfr
remplace AROBASE et POINT par leur vrai signe
Il l'a fait car il ne savait pas que c'était impossible, alea jacta est!


"Fabien" a écrit dans le message de news:
402a9ab6$0$28129$
j'ai déja rencontré ce problème aussi ...
cela venait d'un décallage entre le mode pas à pas et l'exécution réèlle.
Le déroulement n'était pas la meme et une fonction passait avant une


autre.
La seule facon de corriger cela est de modifier ton approche au problème


qui
est tangencieux.

sinon pister ta variable via le débuggereur ou via des valeurs déterminée
dans chaque endroit ou tu l'as modifie

Désolé de ne pas pouvoir faire plus.

"surfeur75" a écrit dans le message de
news:
> Bonsoir,
>
> J'ai une variable fantôme, enfin, son contenu... Bon, j'ai déjà
> rencontré ce genre de problème, mais ce soir je pose la question,
> habituellement je ne contrarie jamais l'ordinateur, je double la


variable
en
> la chargent dans une autre et ça marche, ça pourrait s'appeler "bug",
voici:
>
> J'ai une variable de type public, soit
> Public perso
> Cette variable se charge dans une form, et revient ensuite à


l'appelante,
> elle est ok à ce stade, je l'appelle juste par son nom dans sa form de
> création "perso", alors que dans les autres forms, je l'appelle
> "form1.perso"), ensuite elle fait quelques pérégrinations, avant que je
> lance le Timer et que je rende la main, c'est là qu'intervient le


mystère:
> A l'origine ça ne marchait pas comme prévu à cause de cette variable,
alors
> je l'ai testé par un MsgBox, et quand je l'ai testé elle était ok, et


tout
> marchait, mais si j'inhibais le MsgBox, ma variable se vidait, lol,


c'est
> pas une plaisanterie, ça fait comme s'il y avait un chevauchement en


Ram,
ou
> un dépassement de segment, bref, un bug... Avez-vous une idée ???
> Merci.
> --
> @+, bye, Joe.
> Pour m'écrire ng75AROBASEnoosPOINTfr
> remplace AROBASE et POINT par leur vrai signe
> Il l'a fait car il ne savait pas que c'était impossible, alea jacta est!
>
>
>
>




Avatar
Zoury
Salut Joe!

Pourrais-tu reproduire ce comportement dans un exemple que tu pourrais
poster ici?

--
Cordialement
Yanick Lefebvre - MVP pour Visual Basic
http://faq.vb.free.fr/?rubrique=0 - http://www.mvps.org/vbnet/
http://www.mentalis.org/agnet/apiguide.shtml - http://www.mztools.com/

Merci de poster les réponses au groupe afin d'en faire profiter à tous
Avatar
surfeur75
Bonjour Yannick,

J'ai trouvé une partie, j'avais mis dans activate1 (qui est appelé à
chaque retour de feuille), au lieu de mettre dans load1 (qui n'est appelé
qu'au lancement), mais ça ne m'explique pas pourquoi avec un MsgBox de la
variable concernée c'était bon, et sans message, ce n'était pas bon ?

Non, je ne peux guère joindre le code, il s'agit d'un puzzle (spécial +
18 ans), lol, avec des photos, mais si tu veux je peux te l'envoyer ? Rien
n'interdit par la suite de mettre le résultat du problème ici, s'il est
trouvé... Dis ?

Merci.
--
@+, bye, Joe.
Pour m'écrire ng75AROBASEnoosPOINTfr
remplace AROBASE et POINT par leur vrai signe
Il l'a fait car il ne savait pas que c'était impossible, alea jacta est!


"Zoury" <yanick_lefebvre at hotmail dot com> a écrit dans le message de
news: #
Salut Joe!

Pourrais-tu reproduire ce comportement dans un exemple que tu pourrais
poster ici?

--
Cordialement
Yanick Lefebvre - MVP pour Visual Basic
http://faq.vb.free.fr/?rubrique=0 - http://www.mvps.org/vbnet/
http://www.mentalis.org/agnet/apiguide.shtml - http://www.mztools.com/

Merci de poster les réponses au groupe afin d'en faire profiter à tous




Avatar
Zoury
> Non, je ne peux guère joindre le code, il s'agit d'un puzzle (spécial


+
18 ans), lol, avec des photos, mais si tu veux je peux te l'envoyer ? Rien
n'interdit par la suite de mettre le résultat du problème ici, s'il est
trouvé... Dis ?



ouin... mon patron n'aimerait pas trop ça.. ;O)

Mais je ne parlais pas de poster ton code complet, mais plutôt de
reproduire/isoler ce comportement dans un nouveau projet. Ainsi, il sera
beaucoup plus facile pour nous de trouver ce dont tu parles au lieu de
devoir éplucher ton code. De plus, cette technique permet aussi, très
souvent, à celui qui a le problème d'en découvrir la cause..

--
Cordialement
Yanick Lefebvre - MVP pour Visual Basic
http://faq.vb.free.fr/?rubrique=0 - http://www.mvps.org/vbnet/
http://www.mentalis.org/agnet/apiguide.shtml - http://www.mztools.com/

Merci de poster les réponses au groupe afin d'en faire profiter à tous