+ Répondre à la discussion Actualité déjà publiée
Page 9 sur 9 PremièrePremière ... 56789
Affichage des résultats 161 à 165 sur 165
  1. #161
    Membre actif
    Homme Profil pro
    Développeur informatique
    Inscrit en
    décembre 2012
    Messages
    111
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Transports

    Informations forums :
    Inscription : décembre 2012
    Messages : 111
    Points : 161
    Points
    161

    Par défaut

    bon jour
    alor moi j'ajout un petit truc en programmation
    des foix on peux supprimer quelque teste exemple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    var
    a     : integer;
    test : Boolean;
    begin
    if a = 0 then test = true else test = false;
    end;
    en peux remplacer ça avec

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    var
    a : integer;
    test Boolean;
     
    begin
    test := a=0;
    end ;
    a=0 retourne une valeur logique test recoit cette valeur
    et merci pour tout votre truc..

  2. #162
    Membre Expert Avatar de edam
    Homme Profil pro
    Développeur Delphi/c++/Omnis
    Inscrit en
    décembre 2003
    Messages
    1 828
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur Delphi/c++/Omnis
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : décembre 2003
    Messages : 1 828
    Points : 2 422
    Points
    2 422

    Par défaut

    mon showmessage;

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Function MShowmessage(s:string;But:integer=MB_YESNO+MB_ICONQUESTION):integer;
    begin
        result:=Application.MessageBox(pchar(s),Pchar(NomApplic),But);
    end;
    Procedure MessageInfo(s:string);
    begin
        MShowmessage(s,MB_OK+MB_ICONASTERISK);
    end;
    Procedure MessageErreur(s:string);
    begin
        MShowmessage(s,MB_OK+MB_ICONEXCLAMATION);
    end;
    PAS DE DESTIN, C'EST CE QUE NOUS FAISONS

  3. #163
    Membre Expert Avatar de edam
    Homme Profil pro
    Développeur Delphi/c++/Omnis
    Inscrit en
    décembre 2003
    Messages
    1 828
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur Delphi/c++/Omnis
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : décembre 2003
    Messages : 1 828
    Points : 2 422
    Points
    2 422

    Par défaut

    Citation Envoyé par Golgotha Voir le message
    L'astuce qui me viens spontanément et que j'utilise pour 90% des mes problèmes, la dichotomie.

    Exemple, j'ai une requête qui ne marche pas avec 10 lignes :

    0 -------------------------------------------------------------
    1 -------------------------------------------------------------
    2 -------------------------------------------------------------
    3 -------------------------------------------------------------
    4 -------------------------------------------------------------
    5 -------------------------------------------------------------
    6 ---------------------x erreur x-----------------------------
    7 -------------------------------------------------------------
    8 -------------------------------------------------------------
    9 -------------------------------------------------------------

    La méthode la plus efficace pour trouver l'erreur n'est pas de la chercher directement, mais de faire un découpage et de la localiser.

    Ainsi, je fait le test suivant :

    j'enlève la moitié de la requête.

    0 -------------------------------------------------------------
    1 -------------------------------------------------------------
    2 -------------------------------------------------------------
    3 -------------------------------------------------------------
    4 -------------------------------------------------------------

    La requête fonctionne. Je sais que l'erreur se trouve dans la deuxième moitié, je fait donc de même avec l'autre moitié :

    5 -------------------------------------------------------------
    6 ---------------------x erreur x-----------------------------
    7 -------------------------------------------------------------

    de même avec le reste... Je finirais par tomber sur l'erreur, grosse comme le nez au milieux de la figure !

    6 ---------------------x erreur x-----------------------------

    C'est une technique qui marche avec tout et n'importe quoi, surtout quand on cherche une aiguille dans une meule de foins.
    si FB, j'utilise flamerebin pour tester mes raquettes avant de les insérer dans delphi
    PAS DE DESTIN, C'EST CE QUE NOUS FAISONS

  4. #164
    Membre Expert Avatar de edam
    Homme Profil pro
    Développeur Delphi/c++/Omnis
    Inscrit en
    décembre 2003
    Messages
    1 828
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur Delphi/c++/Omnis
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : décembre 2003
    Messages : 1 828
    Points : 2 422
    Points
    2 422

    Par défaut

    Citation Envoyé par Gilbert Geyer Voir le message
    Bonjour,

    Comme Alainvh Je participe au niveau "ras des pâquerettes" :

    BUT : Comment localiser une erreur de logique qui ne provoque pas forcément un plantage ou un message d'erreur:

    1 ) Je crée une Form qui comporte un RichEdit si je manque de place dans les Forms du projet.

    2) Avant et après le ou les groupes d'instructions que je soupçonne fautives je place des RicheEdit.lines.Add() et des RicheEdit.upDate pour pouvoir suivre l'évolution de valeurs ou de résultats critiques.

    3) Pour éviter d'envoyer trop d'infos dans le RichEdit je les précède, si possible, de if ... then pour n'envoyer à la fin de chaque procédure franchie qu'une simple ligne disant par exemple "Procedure tartanpion : bien passé"

    4) Avant l'essai suivant suivant je supprime l'envoi des infos inutiles et je rétrécis le domaine des recherches jusqu'à ce que j'arrive à cerner la ligne où cela commence à dérailler.

    (un TRichEdit et non un TMemo car on a la possibilité offerte par RichEdit.Print en cas de besoin).

    Parfois c'est rapide, parfois c'est la galère, mais comme les compilos ne savent pas détecter toutes les erreurs qu'on peut faire autant se servir de la bécane pour localiser les erreurs.

    A+
    je préfére Tmemo sur la forme principal, moin lourd, et avec savetofile
    PAS DE DESTIN, C'EST CE QUE NOUS FAISONS

  5. #165
    Expert Confirmé Sénior Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    juillet 2006
    Messages
    10 128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : juillet 2006
    Messages : 10 128
    Points : 14 489
    Points
    14 489

    Par défaut

    Pour les versions PRO et plus
    OutputDebugString et le journal (Ctrl + Alt + V) intégré dans Delphi fait la même chose et permet aussi d'exporter !

    Pour les versions Perso, le Journal, c'est probablement le genre d'outil non fourni
    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

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •