AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi Problem mit TIdHTTP
Thema durchsuchen
Ansicht
Themen-Optionen

Problem mit TIdHTTP

Ein Thema von CG2003 · begonnen am 10. Okt 2004 · letzter Beitrag vom 10. Okt 2004
Antwort Antwort
CG2003

Registriert seit: 8. Nov 2003
Ort: Hamburg
470 Beiträge
 
Delphi 2009 Professional
 
#1

Problem mit TIdHTTP

  Alt 10. Okt 2004, 14:51
Hallo Freunde, ich habe folgenden Code im OnCreate Ereignis meines Formulars:
Delphi-Quellcode:
HTTPO := TIdHTTP.Create(Nil);
HTTPO.OnWork := HTTPOPacketRecvd;
(Wobei HTTPO eine IDHTTP-Komponente ist).

Hier die dementsprechende Prozedur:
Delphi-Quellcode:
procedure TMainServer.HTTPOPacketRecvd(Sender: TObject);
var HPacket : TPacketHead;
begin
       Case TIdHTTP(Sender).Tag of
        9 : LoadMasterList(HPacket,QueryMain.FUTSList(HTTPO.ResponseText))
        else LoadTigerList(QueryMain.FCSTiger(HTTPO.ResponseText))
        end
 end;
Wenn ich das ganze nun kompiliere, erhalte ich vom Compiler folgende Fehlermeldung:
"Inkompatible Typen, Liste der Parameter ist unterschiedlich"

Ich kann so aber keinen Fehler feststellen, und hoffe Ihr könnt mir vielleicht weiterhelfen?

Alternativ habe ich das Projekt, welches ein Game-Server-Browser war/ist an dem ich arbeite (Mit freundlicher Genehmigung des Autors!) beigefügt! Vielleicht könnt Ihr was entdecken! Ich saß schon die ganze Nacht dran und fand' nix! Der Autor hat leider auch keine Ahnung?! Bei ihm sollte es aber mit den Fastnet-Kompos funktioniert haben. Ich habe das auf Indy umgestellt. Tja, und nun geht nix mehr!

Vielen Dank schon mal!

[edit=sakura] [delphi]Tags Mfg, sakura[/edit]
Angehängte Dateien
Dateityp: zip projekt-alphaversion.zip (200,3 KB, 8x aufgerufen)
Sebastian M.
  Mit Zitat antworten Zitat
scp

Registriert seit: 31. Okt 2003
1.120 Beiträge
 
Delphi 7 Personal
 
#2

Re: Problem mit TIdHTTP

  Alt 10. Okt 2004, 15:08
Das Ereignis OnWork hat ein paar mehr Parameter, die auch deklariert werden müssen:
Delphi-Quellcode:
type
  TMainServer = class(TIrgendwas)
    procedure HTTPOPacketRecvd(Sender: TObject; AWorkMode: TWorkMode;
      const AWorkCount: Integer);
  private
    //...
  end;

//...

implementation

//...

procedure TMainServer.HTTPOPacketRecvd(Sender: TObject; AWorkMode: TWorkMode;
  const AWorkCount: Integer);
begin
  //...
end;
  Mit Zitat antworten Zitat
CG2003

Registriert seit: 8. Nov 2003
Ort: Hamburg
470 Beiträge
 
Delphi 2009 Professional
 
#3

Re: Problem mit TIdHTTP

  Alt 10. Okt 2004, 15:43
Ersteinmal vielen Dank!

Jetzt konnte ich es zwar compilieren, aber irgendwie funktioniert das Programm nicht mehr! Es macht keine Server-Abfragen mehr. Eigentlich nichts, was mit dem Internet zu tun hat. Und ich dachte die Umstellung von Fastnet auf Indy wäre leicht

Hmm, ich finde auch keinen Fehler...
Wenn jemand Lust hat, kann er ja mal in den Source schauen, ich glaub' ich brauch' ne Pause...

Falls einer was findet kann er mir vielleicht bescheid geben? Ich trink' jetzt erstmal 'nen Kaffee und dann schau' ich mal weiter...
Sebastian M.
  Mit Zitat antworten Zitat
scp

Registriert seit: 31. Okt 2003
1.120 Beiträge
 
Delphi 7 Personal
 
#4

Re: Problem mit TIdHTTP

  Alt 10. Okt 2004, 16:50
Ich habe mal den Code geöffnet und kompiliert, musste aber zuviel ändern, weil ich wohl ne andere Indy-Version, habe 9.0.4 von daher klappt das noch nicht so, irgendwas mit InputStream und OutputStream nicht definiert.
  Mit Zitat antworten Zitat
CG2003

Registriert seit: 8. Nov 2003
Ort: Hamburg
470 Beiträge
 
Delphi 2009 Professional
 
#5

Re: Problem mit TIdHTTP

  Alt 10. Okt 2004, 19:01
Hmmm, mal sehen... Vielleicht bekommst Du das ja hin, ich hab's immer noch nicht raus...
Sebastian M.
  Mit Zitat antworten Zitat
scp

Registriert seit: 31. Okt 2003
1.120 Beiträge
 
Delphi 7 Personal
 
#6

Re: Problem mit TIdHTTP

  Alt 10. Okt 2004, 21:06
Hast du eventuell einen Denkfehler bei der Verwendung von IdHTTP?
Du verarbeitest ja im OnWork den HTTPO.ResponseText, dieser gibt aber nur den Status (z.B. "HTTP/1.1 200 OK") zurück. Wenn du den HTML-Quelltext bzw. den Inhalt der heruntergeladenen Dastei in einem String haben willst, dann geht das z.B. so:
Delphi-Quellcode:
procedure TMainServer.SBSearchClick(Sender: TObject);
var
  HPacket : TPacketHead;
  ContentStr : String; //Hier
begin
        if not Initialize then exit;

        SetFilters;
        DisplayRules;

        Case CBEGames.ItemIndex of
     0..8 : LoadMasterList(HPacket,nil);
    9..11 : begin
             HTTPO.Tag := CBEGames.ItemIndex;
             ContentStr := HTTPO.Get(MasterFilter.QueryMaster); //Und hier
             Case HTTPO.Tag of
               9 : LoadMasterList(HPacket,QueryMain.FUTSList(ContentStr))
               else LoadTigerList(QueryMain.FCSTiger(ContentStr))
             end;
            end
        end
end;
  Mit Zitat antworten Zitat
CG2003

Registriert seit: 8. Nov 2003
Ort: Hamburg
470 Beiträge
 
Delphi 2009 Professional
 
#7

Re: Problem mit TIdHTTP

  Alt 10. Okt 2004, 22:34
Hallo und erstmal vielen Dank für die schnellen Lösungsansätze!

Hmm, Denkfehler können natürlich sein...
Will ich ja nicht ausschliessen.

Also, ich habe den letzten Lösungsvorschlag mal versucht, aber das funktioniert so leider auch nicht... Sorry, aber ich hoffe wir suchen gemeinsam weiter und werden eine Lösung finden... Den Source habt Ihr ja. Den dürft Ihr auch (laut Autor) verwenden in der Hoffnung das es irgendwann
funktioniert...
Sebastian M.
  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 18:40 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