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

C++Builder Discussion :

NMHTTP prob de rapidit�


Sujet :

C++Builder

  1. #1
    Membre confirm� Avatar de Goldocrack
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    126
    D�tails du profil
    Informations personnelles :
    �ge : 42
    Localisation : France

    Informations forums :
    Inscription : Novembre 2002
    Messages : 126
    Par d�faut NMHTTP prob de rapidit�
    Salut et merci pour cette entre-aide mutuelle.

    J'ai fait un petit prog pour tester si une page existe � l'adresse indiqu�.
    La page � chercher est un chiffre / nombre + .html
    Je r�cup�re donc le header de la page est si le header est vide la page n'existe pas.

    Jusqu'� la aucun probl�me, mais l� o� �a se corse c'est que quand je teste le programme (hors compilateur ou en compilateur ne change rien) le moindre mouvement de l'ordi (faut comprendre d�s qu'on bouge la souris ou que l'�cran de veille appara�t) le programme plante.

    Bien sur on pourra ne rien toucher et tout d�sactiver mais le probl�me appara�t de lui m�me un peu plus tard dans le temps.

    Le probl�me vient du module "NMFAST50.bpl".

    Merci de m'aider. Je donne le code pour une meilleure compr�hension.
    Il faut juste ajouter un BitButton, un NMHTTP et un Memo en laissant les noms par d�faut.


    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
     
    void __fastcall TForm1::BitBtn1Click(TObject *Sender)
    {
    test = 1000;
    NMHTTP1->Disconnect();
     
    go();
    }
    //---------------------------------------------------------------------------
     
     
     
    void __fastcall TForm1::NMHTTP1Success(CmdType Cmd)
    {
    if (NMHTTP1->Header == "")
    {
      NMHTTP1->Disconnect();
      Memo1->Lines->Add(AnsiString(test));
      go();
    }
    else
    {
      ShowMessage("Youpi le code est : "+AnsiString(test));
      NMHTTP1->Disconnect();
    }
     
    }
    //---------------------------------------------------------------------------
     
    void __fastcall TForm1::NMHTTP1Failure(CmdType Cmd)
    {
    NMHTTP1->Disconnect();
    go();
    }
    //---------------------------------------------------------------------------
     
    void TForm1::go()
    {
    test--;
     
    NMHTTP1->Get("http://membres.lycos.fr/jeanpaulpot/jorkenpeteurfou/0"+AnsiString(test)+".htm");
    }
    //---------------------------------------------------------------------------
     
    void __fastcall TForm1::FormClose(TObject *Sender, TCloseAction &Action)
    {
    NMHTTP1->Disconnect();
    }
    //---------------------------------------------------------------------------
    Merci de votre aide !!!



    EDITION LE MEME JOUR :
    Je sais que ce programme peut servir comme prog de hackage mais ce n'est pas du tout dans ce but. Je m'explique : mon pote m'a mis au d�fi de trouver son code contenu dans la page dont l'adresse est marqu� dans la source ci-dessus.
    Mailez-le si vous ne me croyez pas ! (adresse sur le site www.jorkenpeteurfou.fr.st)

    Re-Merci !

  2. #2
    Membre exp�riment�
    Avatar de Neo41
    Inscrit en
    Janvier 2003
    Messages
    241
    D�tails du profil
    Informations forums :
    Inscription : Janvier 2003
    Messages : 241
    Par d�faut
    Salut,

    je viens de tester ton code et j'ai remarqu� que ca me renvoit par d�faut le header de lycos d�s qu'il commence � faire ses recherches !!
    chais pas si j'ai oubli� kelke chose mais c'est ce que j'ai. Et donc du coup il s'arrete dans ses recherches � la premiere valeur de ta variable <B>test</B> et me dit tout de suite "Youpi le code est xx" !!!

  3. #3
    Membre �prouv�
    Avatar de Freeze
    Homme Profil pro
    Inscrit en
    Octobre 2002
    Messages
    131
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (�le de France)

    Informations forums :
    Inscription : Octobre 2002
    Messages : 131
    Par d�faut
    j'ai jamais essay�... mais regarde dans l'aide de la m�thode de ton objet Get()... elle est pas mal faite... et ca a pas l'air aussi simple que le code que tu fournis !!!!!!!!!!!!!! Bonne chance et tiens nous au courant !!!!

  4. #4
    Membre exp�riment�
    Avatar de Neo41
    Inscrit en
    Janvier 2003
    Messages
    241
    D�tails du profil
    Informations forums :
    Inscription : Janvier 2003
    Messages : 241
    Par d�faut
    Je sais maintenant pkoi le header n'est pas null m�me si la page choisie n'existe pas. Eh bien tout simplement parce que lycos redirige la requete vers une dite page "http://www.multimania.lycos.fr/error/404.phtml\r\n" et donc du coup le header n'est jamais null.

    Je pense qu'il faudrait tester autre chose. Chui en train de chercher...

  5. #5
    Membre exp�riment�
    Avatar de Neo41
    Inscrit en
    Janvier 2003
    Messages
    241
    D�tails du profil
    Informations forums :
    Inscription : Janvier 2003
    Messages : 241
    Par d�faut
    j'ai trouv� le code !! essayes 25

  6. #6
    Membre exp�riment�
    Avatar de Neo41
    Inscrit en
    Janvier 2003
    Messages
    241
    D�tails du profil
    Informations forums :
    Inscription : Janvier 2003
    Messages : 241
    Par d�faut
    En fait le 25 �tait un pi�ge !! le vrai code est 709 !!!

  7. #7
    Membre exp�riment�
    Avatar de Neo41
    Inscrit en
    Janvier 2003
    Messages
    241
    D�tails du profil
    Informations forums :
    Inscription : Janvier 2003
    Messages : 241
    Par d�faut
    Ce que j'ai oubli� de dire c'est comment j'ai fais. en fait il suffit de rajouter un bool�en dans l'evenement OnRedirect pour tester � chaque fois si on est �t� redirig� ou non, et le tour est jou� !!
    ainsi le code sera le suivant !
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
     
    //---------------------------------------------------------------------------
    void __fastcall TForm1::NMHTTP1Redirect(bool &Handled)
    {
    	redirect = true;
    }
    //---------------------------------------------------------------------------
     
    //---------------------------------------------------------------------------
    void __fastcall TForm1::NMHTTP1Success(CmdType Cmd)
    {
    if (NMHTTP1->Header == "" || redirect == true)
    {
      NMHTTP1->Disconnect();
      Memo1->Lines->Add(AnsiString(test));
      go();
    }
    else
    {
      ShowMessage("Youpi le code est : "+AnsiString(test));
      NMHTTP1->Disconnect();
    }
     
    }
    //---------------------------------------------------------------------------
     
    void TForm1::go()
    {
    test++;
    redirect = false;
     
    etc.
    //---------------------------------------------------------------------------
    Voil� voil�

  8. #8
    Membre confirm� Avatar de Goldocrack
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    126
    D�tails du profil
    Informations personnelles :
    �ge : 42
    Localisation : France

    Informations forums :
    Inscription : Novembre 2002
    Messages : 126
    Par d�faut Merci
    Merci � tous pour avoir cherch� une r�ponse.
    Bonne continuation � tous dans ce forum et VIVE L'ENTRAIDE !!!

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. De la rapidit� du code
    Par jfloviou dans le forum Contribuez
    R�ponses: 233
    Dernier message: 29/05/2009, 02h17
  2. Prob, images, Panels, et form.
    Par CaptainChoc dans le forum Composants VCL
    R�ponses: 2
    Dernier message: 10/05/2003, 10h08
  3. Rapidite enregistrement
    Par mika dans le forum D�buter
    R�ponses: 9
    Dernier message: 25/04/2003, 15h15
  4. Thread probs avec WaitFor()
    Par pixelrock dans le forum C++Builder
    R�ponses: 2
    Dernier message: 04/11/2002, 09h40
  5. [Kylix] prob listview
    Par sdoura2 dans le forum EDI
    R�ponses: 1
    Dernier message: 22/10/2002, 21h37

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