PC SOFT

FOROS PROFESIONALES
WINDEVWEBDEV y WINDEV Mobile

Inicio → WINDEV 2024 → [WD12 - 048] Hande de fenêtre non valide
[WD12 - 048] Hande de fenêtre non valide
Iniciado por BLMDINF, 16,abr. 2008 20:36 - 18 respuestas
Publicado el 16,abril 2008 - 20:36
Bonsoir à tous,
Sur mes programmes compilés (EXE), j'ai quelques fois le message suivant:
[...]
Vous avez appelé la fonction Ouvre()
Windows n'a pas pu créer la fenêtre fcda400 pour la raison suivante:
>Handle de fenêtre non valide.
(1400)
[...]

Cette erreur survient aléatoirement et pas seulement sur cette fenêtre.
Dans 90% des cas, la fenêtre s'ouvre normalement.

Il arrive aussi lors du lancement de l'exécutable, que ce dernier ne se
lance pas...
Je soupçonne la même erreur, mais elle ne s'affiche pas...

Avant de contacter le support technique, je voulais savoir si vous avez
aussi constaté ces types d'erreurs ?
Merci d'avance

BLMDinf
Publicado el 22,abril 2008 - 16:15
Bonjour :-) Nous avons exactement le même problème chez nous. Nous écrivons nous aussi a PC Soft aujourd'hui pour avoir une solution. On s'en donne des nouvelles aussitôt qu'on trouve la solution.
Publicado el 29,abril 2008 - 15:52
J'ai malheureusement les mêmes problèmes avec MDIOuvre.
J'ai la version 48k.
C'est très problèmatique chez mes clients.
Que puis je faire ??????

MERCI
Publicado el 29,abril 2008 - 16:03
Le bug survient systématiquement après une impression vers PDF, HTML.
Publicado el 29,abril 2008 - 17:15
J'aimerais bien vous aider mais nous sommes toujours en recherche d'une solution... Aussi nous attendons des nouvelles de PCSoft la dessus. Bien sur nous pourrions se programmer une procedure globale qui pourrait gérer les ouvertures de fenetres et les erreur mais au millier de fenetres que nous avons nous espérons avoir une réponse convenable de PCSoft avant d'en arriver a cette solution longue en dévelopement et en implantation. Aux premieres nouvelles que nous aurons je reviendrai inscrire la solution sur le forum.
Publicado el 29,abril 2008 - 19:18
Bonjour,
Si vous avez Windows XP, pourriez-vous essayer ceci:
Dans les propriétés Système, onglet Avancé, bouton Performance,
Options de performances, onglet "Prévention de l'exécution des données"
Activer la prévention d'exécution [...] sauf ceux que je sélectionne
Et ajouter votre exécutable dans la liste

Depuis que j'ai fait çà, je n'ai pas eu le message, mais comme c'était
aléatoire...
Merci de me tenir au courant

BLMDinf

"Matthieu-David Gélinas" <mdgelinas@prommel.com> a écrit dans le message de
news: 48171e4c$1@news.pcsoft.fr...


J'aimerais bien vous aider mais nous sommes toujours en recherche d'une
solution... Aussi nous attendons des nouvelles de PCSoft la dessus. Bien
sur nous pourrions se programmer une procedure globale qui pourrait gérer
les ouvertures de fenetres et les erreur mais au millier de fenetres que
nous avons nous espérons avoir une réponse convenable de PCSoft avant d'en
arriver a cette solution longue en dévelopement et en implantation. Aux
premieres nouvelles que nous aurons je reviendrai inscrire la solution sur
le forum.

Publicado el 30,abril 2008 - 01:28
Merci beaucoup BLMDinf! Nous testons ca sur nos machine XP dès cet apres midi. J'ai tenté de trouver l'équivalent sur Windows 2000 et 2000 Server (pour nos terminal server) mais sans succès. Nous continuons nos recherche. Je vous tiens au courant, merci beaucoup encor!
Publicado el 30,abril 2008 - 19:22
Bonsoir,
Désolé, mais la méthode que j'ai évoqué n'a pas tout solutionné car je viens
à nouveau d'avoir le message :-(

BLMDinf

"Matthieu-David Gélinas" <mdgelinas@prommel.com> a écrit dans le message de
news: 481749b0$1@news.pcsoft.fr...



Merci beaucoup BLMDinf! Nous testons ca sur nos machine XP dès cet apres
midi. J'ai tenté de trouver l'équivalent sur Windows 2000 et 2000 Server
(pour nos terminal server) mais sans succès. Nous continuons nos
recherche. Je vous tiens au courant, merci beaucoup encor!
Publicado el 01,mayo 2008 - 19:59
Effectivement, de notre coté ca ne règle pas le problème non plus. Nous continuons de chercher.
Publicado el 02,mayo 2008 - 22:34
Bonjour :-) Le problème n'est toujours pas résolu mais je crois quand même avoir une manière de le cacher à l'utilisateur...

QUAND EXCEPTION
SELON ExceptionInfo(errCode)
CAS 10023: //pour le code 1400 invalid window handle...
SI {ChampEnCours}..Type = typOptionMenu ALORS
ExécuteTraitement({ChampEnCours},trtClic)
FIN
AUTRE CAS :
LogExec()
FIN
FIN

A date ca tiens la route... si ca peut vous mettre sur une piste. Si on trouve autre chose je vous réécrit
Publicado el 06,mayo 2008 - 16:16
Bonjour,
Je reviens sur le problème, qui devient vraiment TRES AGACANT...

Si vous avez un petit projet sur lequel çà arrive, n'hésitez pas à contacter
le support technique PCSOFT car c'est vraiment aléatoire et plus on sera à
remonter le problème et plus on aura de chance d'être pris en compte.

En revanche, à propos de votre solution avec le "QUAND EXCEPTION", où
avez-vous mis ce code car je n'arrive pas à contourner le problème avec
cette solution ?

Merci d'avance
BLMDinf

"Matthieu-David Gélinas" <mdgelinas@prommel.com> a écrit dans le message de
news: 481b576d@news.pcsoft.fr...

Bonjour :-) Le problème n'est toujours pas résolu mais je crois quand même
avoir une manière de le cacher à l'utilisateur...

QUAND EXCEPTION
SELON ExceptionInfo(errCode)
CAS 10023: //pour le code 1400 invalid window handle...
SI {ChampEnCours}..Type = typOptionMenu ALORS
ExécuteTraitement({ChampEnCours},trtClic)
FIN
AUTRE CAS :
LogExec()
FIN
FIN

A date ca tiens la route... si ca peut vous mettre sur une piste. Si on
trouve autre chose je vous réécrit
Publicado el 06,mayo 2008 - 17:57
Bonjour :-) Ce code "QUAND EXCEPTION" n'a pas réglé le problème mais le rend presque invisible à l'utilisateur. De notre coté les erreur 1400 arrivaient presque tout le temps dans nos options de menu (sur le click). J'ai donc placé ce code dans la DÉCLARATION GLOBALE DE FEN_MENU_OPERATION

QUAND EXCEPTION
SELON ExceptionInfo(errCode)
CAS 10023:
SI {ChampEnCours}..Type = typOptionMenu ALORS
ExécuteTraitement({ChampEnCours},trtClic)
FIN
AUTRE CAS :
//Procedure normale de gestion d'erreur...
FIN
FIN
FIN

Ce qui arrive dans ce cas c'est que l'erreur 1400 surviens... si le champs en cours est une option de menu alors on ne fait que réexécuter le code clic de cette option. Sinon l'il ne se passe rien et l'utilisateur n'aura qu'à recliquer sur son champs (ex: un bouton quelconque dans une fenêtre).

Dans un autre de nos projets l'erreur 1400 survenait souvent dans le même fenêtre sur des clic de bouton alors dans le code de DÉCLARATION GLOBALE de la fenêtre j'ai mis le même code qu'en haut en changeant la condition

SI {ChampEnCours}..Type = typOptionMenu ALORS
pour
SI {ChampEnCours}..Type = typBouton ALORS

Il est très important de mettre la commande ChampEnCours entre accolades {} pour que Windev le voit comme un champ et ses méthodes.

A date ca diminue de beaucoup les erreurs mais c'est du cas par cas. PCSoft nous on écrit qu'ils envoyaient le problème au support technique et qu'aussitot qu'ils auraient gérés ce bug ils nous réécriraient.

J'espère avoir un peu aidé...
Bonne continuation, on se tiens au parfum... :-D
Publicado el 07,mayo 2008 - 10:29
Bonjour,

Merci beaucoup pour ces précisions

BLMDinf

"Matthieu-David Gélinas" <mdgelinas@prommel.com> a écrit dans le message de
news: 48206084$1@news.pcsoft.fr...

Bonjour :-) Ce code "QUAND EXCEPTION" n'a pas réglé le problème mais le
rend presque invisible à l'utilisateur. De notre coté les erreur 1400
arrivaient presque tout le temps dans nos options de menu (sur le click).
J'ai donc placé ce code dans la DÉCLARATION GLOBALE DE FEN_MENU_OPERATION

QUAND EXCEPTION
SELON ExceptionInfo(errCode)
CAS 10023:
SI {ChampEnCours}..Type = typOptionMenu ALORS
ExécuteTraitement({ChampEnCours},trtClic)
FIN
AUTRE CAS :
//Procedure normale de gestion d'erreur...
FIN
FIN
FIN

Ce qui arrive dans ce cas c'est que l'erreur 1400 surviens... si le champs
en cours est une option de menu alors on ne fait que réexécuter le code
clic de cette option. Sinon l'il ne se passe rien et l'utilisateur n'aura
qu'à recliquer sur son champs (ex: un bouton quelconque dans une fenêtre).

Dans un autre de nos projets l'erreur 1400 survenait souvent dans le même
fenêtre sur des clic de bouton alors dans le code de DÉCLARATION GLOBALE
de la fenêtre j'ai mis le même code qu'en haut en changeant la condition

SI {ChampEnCours}..Type = typOptionMenu ALORS
pour
SI {ChampEnCours}..Type = typBouton ALORS

Il est très important de mettre la commande ChampEnCours entre accolades
{} pour que Windev le voit comme un champ et ses méthodes.

A date ca diminue de beaucoup les erreurs mais c'est du cas par cas.
PCSoft nous on écrit qu'ils envoyaient le problème au support technique et
qu'aussitot qu'ils auraient gérés ce bug ils nous réécriraient.

J'espère avoir un peu aidé...
Bonne continuation, on se tiens au parfum... :-D
Publicado el 08,mayo 2008 - 22:38
Nous avons d'autres erreurs de handle non valide (1400). Apres avoir exécuté le QUAND EXCEPTION, si l'erreur est un handle de fenetre non valide, nous réexécutons l'événement clic de l'option de menu. Cependant, si après ce reclic l'erreur survien a nouveau WINDEV ne retournera pas dans le QUAND EXCEPTION. La raison de tout est probablement due au fait qu'il faut réactiver la gestion des exceptions.
L'aide de WINDEV nous a guidé vers l'instruction ExceptionActive().

Ré-active le traitement d'exception en cours si l'exception a pu être corrigée.

Rappel : Un traitement d'exception du WLangage ne peut servir qu'une seule fois (ceci permet d'éviter des boucles sans fin si l'exception n'est pas correctement corrigée). La fonction ExceptionActive permet de réactiver le traitement d'exception : une autre exception pourra donc être traitée par le traitement.

// Ré-active le traitement d'exception
ExceptionActive()

Copier ce code

ExceptionActive()

Appel de la fonction ExceptionActive

La fonction ExceptionActive doit être appelée uniquement dans un traitement d'exception (traitement déclenché par le mot-clé : "QUAND EXCEPTION").

La fonction ne doit pas être utilisée dans une procédure ou dans une méthode appelée depuis un traitement d'exception.

En espérant que ca puisse vous aider un peu plus :-) Bonne fin de journée
Publicado el 21,mayo 2008 - 19:22
Bonjour,

j'obtiens hélas la même erreur.

Le support technique vous à t il répondu ?

Merci
Publicado el 21,mayo 2008 - 19:51
Non, toujours pas de réponse du support technique. Mais notre solution temporaire décrite plus haut fonctionne très bien, on a plus aucune erreur depuis que c'est implanté.
Publicado el 22,mayo 2008 - 00:22
BLMDINF avait soumis l'idée :
Bonsoir à tous,
Sur mes programmes compilés (EXE), j'ai quelques fois le message suivant:
[...]
Vous avez appelé la fonction Ouvre()
Windows n'a pas pu créer la fenêtre fcda400 pour la raison suivante:
Handle de fenêtre non valide.
(1400)

[...]

Cette erreur survient aléatoirement et pas seulement sur cette fenêtre.
Dans 90% des cas, la fenêtre s'ouvre normalement.

Il arrive aussi lors du lancement de l'exécutable, que ce dernier ne se
lance pas...
Je soupçonne la même erreur, mais elle ne s'affiche pas...

Avant de contacter le support technique, je voulais savoir si vous avez
aussi constaté ces types d'erreurs ?
Merci d'avance

BLMDinf


J'ai le même problème mais uniquement sur des projets assez importants.
Dans ces projets si on effectue deux impressions avec visualisation à
l'écran d'affilé et qu'on demande l'impression en pdf, ce problème
revient systématiquement lors de la seconde impression.
J'ai communiqué le problème au support mais on m'a demandé d'envoyer un
exemple car ils n'arrivaient pas à reproduire le problème.
J'ai essayé, en vain, d'avoir le problème sur une petite application
afin de pouvoir l'envoyer au support.
J'ai répondu au support qu'il ne m'était pas possible de créer une
petite application avec ce problème et que c'était impensable d'envoyer
une grosse application pour générer le problème.
Le problème en est resté la.

--
Publicado el 22,mayo 2008 - 09:03
Dans notre cas, que l'application soit petite ou grande ca le fesait environ 20 fois par jour. Dans les fenêtres, les options de menu, les boutons. Le support nous ont dit qu'ils travailleraient la dessus. Cependant, depuis la méthode décrite plus haut ca na jamais recommencé.
Publicado el 24,mayo 2008 - 20:48
BLMDINF avait prétendu :
Bonsoir à tous,
Sur mes programmes compilés (EXE), j'ai quelques fois le message suivant:
[...]
Vous avez appelé la fonction Ouvre()
Windows n'a pas pu créer la fenêtre fcda400 pour la raison suivante:
Handle de fenêtre non valide.
(1400)

[...]

Cette erreur survient aléatoirement et pas seulement sur cette fenêtre.
Dans 90% des cas, la fenêtre s'ouvre normalement.

Il arrive aussi lors du lancement de l'exécutable, que ce dernier ne se
lance pas...
Je soupçonne la même erreur, mais elle ne s'affiche pas...

Avant de contacter le support technique, je voulais savoir si vous avez
aussi constaté ces types d'erreurs ?
Merci d'avance

BLMDinf


Je viens d'installer la dernière version (55n) et à première vue le
problème a disparu. Avez-vous également ce problème qui a disparu.
Merci

--