Idhttp->Host in For-Schleife = EAccessViolation ??
-
beim Ausführen des folgenden Sources kommt nachdem die Message-Box erschien in der stand "Das war Nummer : 3" ein EAccess-Violation-Error und das Programm bricht ab.
Ich nutze natürlich Indy 9 welches auch korrekt funktioniert.
Wenn ich hingegen die For-Schleife gegen 5 Mal den einzelnen Befehl ersetze funktioniert es tadellos.TIdHTTP *http[4]; for(int i=0; i<5; i++) { http[i]=new TIdHTTP(this); if (http[i]->Host=="") ShowMessage("Das war Nummer : "+IntToStr(i)); }
-
Lu Shang schrieb:
TIdHTTP *http[4];
Das sind nur vier. 0 bis 3.
-
Du willst 4, du kriegst 4 ?!?!?
-
Er will 5 und kriegt 4.
-
Er kriegt aber zwangsläufig nur 4, weil er nur 4 anfordert. Oder kriegt man
TIdHTTP *http[1];zwei
und mitTIdHTTP *http[0];einen??? Eben...
-
Nein aber in der Schleife will er 5 und darum kriegt er ne AccesViolation.
-
Ok... so kann man es auch sagen. Im endefekt hat er warscheinlich einen kleinen Denkfehler im Index eines Arrays?

-
OK danke sehr für die schnelle,kompetente Hilfe.
Mein N00b-Buch hat nen neuen Eintrag nach der 'fehlerfreien Installation vonn Indy' bekommen