AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi TIdHTTP.get = kein Ergebnis
Thema durchsuchen
Ansicht
Themen-Optionen

TIdHTTP.get = kein Ergebnis

Ein Thema von Benji87 · begonnen am 12. Jun 2007 · letzter Beitrag vom 14. Jun 2007
Antwort Antwort
Benji87
(Gast)

n/a Beiträge
 
#1

TIdHTTP.get = kein Ergebnis

  Alt 12. Jun 2007, 12:40
Hallo Leute,

ich versuche einen Messenger zu bauen. Da ich ohne Server arbeiten möchte, brauche ich die IPs der User.
Ich habe auf meinem Webserver eine MySQL-Datenbank laufen, in der die Benutzer mit IPs gespeichert werden sollen.
Wenn ich nun über die Indy-Kompponenten die IP mit Hilfe des IdHTTP herausfinden will, bleiben die Variablen für die IP leer.
Der Quellcode ist folgender:

Delphi-Quellcode:
.....
procedure TForm2.SpeedButton1Click(Sender: TObject);
var inid: TIniFile; ip: string; internet_ip: string; IdHTTP1: TIdHTTP;
const FileName = 'start.wav';
begin
.....
    IdHTTP1:= TIdHTTP.Create(nil);
    IdHTTP1.Request.Connection:= 'Keep-Alive';
    ip := IdHTTP1.Get('http://checkip.dyndns.org/');
    internet_ip:=Copy(ip, Pos('Current IP Address: ', ip)+20, Length(ip)-92);
.....
end;
Starte ich nun mein Projekt im Debugger, werden wie Variablen "ip" sowie "internet_ip" nicht gesetzt. Fehlermeldungen erschedinen keine. Wenn ich allerdings alles bis auf die letzten 2 Zeilen lösche und die Komponente direkt auf das Formular ziehe, bekomme ich beim starten (application.run) einen Fehler "....Parameter Request.ProxyPort existiert nicht......." Der Wert steht in der Komponente auf 0 und ich benutze auch keinen Proxy.

Ich benutze z.Zt. Delphi 6 Enterprise mit den Indys in Version 9.

Vielleiche kann mir einer von euch sagen, wie ich die Variablen gefrüllt bekomme

Gruß
Benji87
  Mit Zitat antworten Zitat
Van HelF

Registriert seit: 24. Okt 2005
Ort: Karlsbrunn
195 Beiträge
 
Delphi 7 Personal
 
#2

Re: TIdHTTP.get = kein Ergebnis

  Alt 14. Jun 2007, 07:06
Delphi-Quellcode:
function get_ip:string;
var ip: string; internet_ip: string; IdHTTP1: TIdHTTP;
begin
  try
    IdHTTP1:= TIdHTTP.Create(nil);
    IdHTTP1.Request.Connection:= 'Keep-Alive';
    ip := IdHTTP1.Get('http://checkip.dyndns.org/');
    internet_ip:=Copy(ip, Pos('Current IP Address: ', ip)+20, Length(ip)-92);
    result:=internet_ip;
   finally
     IdHTTP1.Free;
   end;
end;
try finally nicht vergessen
Funktioniert bei mir ohne probs, getestet mit indy9 und Delphi 7.
  Mit Zitat antworten Zitat
CCRDude
(Gast)

n/a Beiträge
 
#3

Re: TIdHTTP.get = kein Ergebnis

  Alt 14. Jun 2007, 08:15
Das mit dem Parameter der nicht existiert klingt ein bißchen nach einem Versionsmischmasch. Das mitgelieferte Indy 9 dürfte ja uralt sein, evtl. hast Du ein neueres runtergeladen und beide im Suchpfad? Oder das Package vom alten installiert, aber nur den neuen Suchpfad?

Ansonsten empfehle ich, mal nen Test auf Mem Leaks zu machen (in der Projektdatei am Anfang ein ReportMemoryLeaksOnShutdown := true; ), dann wird Dir Indy 9 schon vergehen
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:10 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz