begin process at 2008 08 30 00:02:57
1 233 952 membres
470 nouveaux aujourd'hui
14 294 membres club

Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum.
Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Gros souci : Idhttp.get -> Range Check Error [ Réseau & Internet / Internet ] (minoxor)

Gros souci : Idhttp.get -> Range Check Error le 12/06/2008 18:48:30

minoxor
Bonjour à tous,

Voila je bosse pas mal avec le composant Tidhttp et voila que je tombe sur un os..Je me fais un get sur l'url 'www.google.fr' pour tester et pouf Range Check Error..
J'ai chercher pas mal sur le net et dans les forum et apparement je ne suis pas le seul avec ce problème , mais voila je n'ais pas trouvé de solution au problème. Si quelqu'un de plus compétent que moi pouvez m'aider ce serait super..

En simplifiant à mort le code voici ce que ça donne. Normalement ça doit vous générer l'erreur.

procedure TForm1.Button1Click(Sender: TObject);
var
Fs: TStringStream ; Fbuffer: string;
IdHTTP1:Tidhttp;
  begin
  Fs := Tstringstream.Create(Fbuffer);
  IdHTTP1:=Tidhttp.Create(nil);
  Try
   IdHTTP1.get('http://www.google.fr',Fs);
    except

    Exit;

  end;
  end;

Re : Gros souci : Idhttp.get -> Range Check Error le 12/06/2008 20:28:36

florenth
Membre Club
Salut !
Bah, c'est normal en fait !

Ton StringStream est initialisé à '' donc c'est comme si tu lui donnais zéro octet de mémoire.

Enfin, j'en suis plus tro psûr, mais je pense que le problème vient de par là.
Et si tu met un TMemoryStream, ça donne quoi ?

A+
Flo

Re : Gros souci : Idhttp.get -> Range Check Error le 12/06/2008 20:33:53

florenth
Membre Club
Ah non, pardon, je confonds avec un autre stream.
Du coup, je me suis emmêlé les pinceaux.

D'ailleurs, je viens de tester, ton code fonctionne ! (Indy v.9)
Y'a surement un hic ailleurs, on peut voir le "vrai" code, stp ?

Re : Gros souci : Idhttp.get -> Range Check Error le 13/06/2008 09:36:48

minoxor
Merci pour ta réponse.

Je commence à cerner un peu le problème. L'erreur apparait quand je teste en édition mais si je lance l'exe sur le disk , il n'y a pas d'erreur et le get fonctionne parfaitement.

J'utilise indy 10 et le code fourni plus haut ne marche pas dans l'éditeur..
J'ai aussi testé avec un Tmemorystream et ça fait pareil.
Ce serait bien si quelqu'un qui posséde indy 10 pouvait tester sur sa machine.



Re : Gros souci : Idhttp.get -> Range Check Error le 13/06/2008 10:28:36

florenth
Membre Club
Mouais, en tout cas, Indy 10 pose beaucoup plus de problèmes que Indy 9 (y'a qu'a demander à 36-15, hein Francky ?)

Si tu as la version 9, je te conseille d'y retourner SAUF si tu as absolument besoin des nouveautés apportées par la version 10.

Si le code plante dans l'éditeur mais marche avec l'exécutable seul, c'est sûrement une des ces exceptions "normales" que génère Indy.
Normalement, tu as plusieurs messages d'erreurs et puis ça t'emmène vers le bout de code qui fait planter, et là, les dev de Indy laissent toujours un message pour expliquer le pourquoi du comment.

Tu devrais essayer de regarder par là aussi, des fois que...

Re : Gros souci : Idhttp.get -> Range Check Error le 13/06/2008 13:39:37

Francky23012301
Membre Club
Salut,

Oui la version 10 n'est pas stable. Du reste je n'ai plus Indy d'installer. Je préfère tout coder en dur. Et c'est ce que je conseille à notre ami surtout vu la simplicité du HTTP : C'est reglé en 30 lignes de code

Re : Gros souci : Idhttp.get -> Range Check Error le 13/06/2008 15:26:39

florenth
Membre Club
Tiens, je serai curieux de savoir comment tu t'y prends... 30 lignes, ça me semble peu pour gérer un protocole entier !

Re : Gros souci : Idhttp.get -> Range Check Error le 13/06/2008 16:27:39

Francky23012301
Membre Club
Salut Flo, je n'ai pas dis gérer un protocole entier  . A priori il n'a pas besoin de grand chose : il suffit juste de créer un socket et d'implanter la commande get. Avec la gestion des erreurs ca ne fait peut etre pas 30 lignes (c'était une façon de parler) mais ce n'est pas non plus un travail monstrueux : ca te permet en plus d'avoir le strict nécessaire et donc ca limite la taille de ton appli.

Pas le temps de faire ca en ce moment : je plugin Catherine Zeta Jones  (Et c'est hachement plus rigolot à faire ).

Re : Gros souci : Idhttp.get -> Range Check Error le 13/06/2008 16:29:58

Francky23012301
Membre Club

Pour une idée, tu peux toujours regarder le source que j'avais fais sur le protocole SMTP. La partie socket est tres proche. Question protocole : c'est du meme niveau de difficulté pour gérer le HTTP en intégralité.


Re : Gros souci : Idhttp.get -> Range Check Error le 13/06/2008 18:38:27

minoxor
Bon ça a le mérite d'être clair vos réponses.
Merci en tout cas , je vais passer à indy 9 ça me parait de mon niveau :)




[Page 1 Page 2]
Classé sous : error, get, check, range, tidhttp

Participer à cet échange

Pub



Appels d'offres

Recherche developpeur ...
Budget : 700€
SITE MARCHAND LOCATION...
Budget : 3 000€
SITE MARCHAND POUR HOTEL
Budget : 4 000€

CalendriCode

Août 2008
LMMJVSD
    123
45678910
11121314151617
18192021222324
25262728293031

VS Express FR Gratuit !

VS Express en français et 100% gratuit !

Téléchargements

Logiciels à télécharger sur le même thème :

Boutique

Boutique de goodies CodeS-SourceS