IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage Delphi Discussion :

Handle de fenêtre non valide


Sujet :

Langage Delphi

  1. #1
    Membre régulier
    Homme Profil pro
    agent de fisc(les impots)
    Inscrit en
    Juillet 2006
    Messages
    427
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : agent de fisc(les impots)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 427
    Points : 111
    Points
    111
    Par défaut Handle de fenêtre non valide
    salut a tous
    delphi 7 et interbase
    j'ai r'ajouter dans un état de sortie le composant qrrichtext pour afficher le contenue de quelque champs, tout passe bien sauf si je quitte mon application une erreur me dite:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    " EOSError "Erreur système. Code 1400." Handle de fenêtre non valide "
    merci d'avance

  2. #2
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 031
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 031
    Points : 40 930
    Points
    40 930
    Billets dans le blog
    62
    Par défaut
    Bonjour,

    pas assez d'informations (code de clôture, code d'appel à Quickreport etc..) pour répondre .
    Un debug avec quelques points d'arrêt permettrait certainement de cibler plus précisément le code fautif
    MVP Embarcadero
    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes)
    SGBD : Firebird 2.5, 3, SQLite
    générateurs États : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd

  3. #3
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 447
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 13 447
    Points : 24 849
    Points
    24 849
    Par défaut
    Les seuls fois où j'ai eu une erreur 1400 c'est lorsque j'ai voulu lancer l'impression QuickReport depuis un Thread : cela remonte à 2003 - Erreur Windows 1400 : Error_Invalid_Window_Handle
    Je n'ai pas trouvé mieux que d'utiliser un OnIdle (ou un TTimer) qui aspire une liste de travaux à imprimer (à la décision humaine mais surtout en décision automatique d'un autre thread)

    En fait, même un simple ShowMessage depuis un Thread peut produire cette erreur !
    J'en était arrivé à la conclusion qu'un TDbEngineErrorDlg était créé dans un thread et me foutait tout par terre
    Je n'ai pas eu ce cas depuis !

    Regarde avec attention, ton code d'instanciation et ton code de libération, tout vient de là !
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  4. #4
    Membre régulier
    Homme Profil pro
    agent de fisc(les impots)
    Inscrit en
    Juillet 2006
    Messages
    427
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : agent de fisc(les impots)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 427
    Points : 111
    Points
    111
    Par défaut
    pour afficher mon etat j'utilise un previewmodal, j'ai retirer le modal et j'ai essai avec un preview sans modal l"erreur a été disparu
    peut etre le probleme et la ???

  5. #5
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 031
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 031
    Points : 40 930
    Points
    40 930
    Billets dans le blog
    62
    Par défaut
    Bonjour,

    Toujours pas de code et peu d'explications !
    déjà qu'il n'est pas forcément évident pour le lecteur de ce post de savoir qu'il s'agit de quickreport !

    tout d'abord il faut savoir que PreviewModal est moins fiable (non threadSafe) que Preview, désolé je ne vais pas traduire ce qui suit
    Preview
    procedure Preview
    Use ‘Preview’ to generate the report and bring up an on screen preview of it. From the preview window the user can choose to print the report.

    PreviewModal
    procedure PreviewModal
    As Preview with the following differences -
    When calling PreviewModal the report is generated in a background thread. Some database drivers are not thread safe and this might cause unexpected behavior or program crashes. Only use PreviewModal in situations where it is sure that a thread safe database driver will be used.

    si vous voulez vraiment l'utiliser le mieux aurait été de préparer l'état (Prepare) avant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Quickrep1.Prepare;
    QuickRep1.PreviewModal;
    on n'a même pas le contexte , mais si avec preview cela fonctionne il ne s'agit certainement pas d'une utilisation à l'intérieur d'un thread
    MVP Embarcadero
    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes)
    SGBD : Firebird 2.5, 3, SQLite
    générateurs États : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd

Discussions similaires

  1. Handle de fenêtre non valide
    Par ired dans le forum Langage
    Réponses: 17
    Dernier message: 26/04/2010, 11h40
  2. Handle de fenêtre non valide
    Par bernie.noel dans le forum Langage
    Réponses: 5
    Dernier message: 18/03/2008, 18h48
  3. Réponses: 11
    Dernier message: 02/11/2006, 13h36
  4. Réponses: 17
    Dernier message: 22/09/2006, 08h37
  5. Handle de fenètre non valide
    Par minnit_s dans le forum C++Builder
    Réponses: 4
    Dernier message: 01/01/2006, 19h26

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo