Entwickler-Ecke
Internet / Netzwerk - idAntiFreeze Zugriffsverletzung
Dude566 - Di 12.05.09 17:10
Titel: idAntiFreeze Zugriffsverletzung
Also ich habe in meinem FTP CLient jetzt die AntiFreeze Komponente von Indy einbauen wollen damit das Formular nicht hängt während eines Down- und Uploads.
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12:
| private MyFTP : TIdFTP; AntiFreeze : TIdAntiFreeze;
procedure TForm1.FormCreate(Sender: TObject); begin MyFTP := TIdFTP.Create(Self); AntiFreeze := TIdAntiFreeze(Self); AntiFreeze.Active := true; AntiFreeze.OnlyWhenIdle := false; end; |
Beim kompilieren bekomme ich die Fehlermeldung " Zugriffsverletzung in blabla...".
Dann öffnet sich Projekt1:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13:
| program Project1;
uses Forms, Unit1 in 'Unit1.pas' ;
{$R *.RES}
begin Application.Initialize; Application.CreateForm(TForm1, Form1); Application.Run; end. |
Das Highlight sieht in Delphi dann blau aus.
Was is das? Das vor der Komponente nicht so.
Gruß Dude566
Narses - Di 12.05.09 17:54
Moin!
Das IdAntiFreeze-Zeuchs ist Schrott, pack den Up-/Download in einen Thread, fertig. :idea:
cu
Narses
Xentar - Di 12.05.09 18:25
1. Bekommst du die Zugriffsverletzung nicht beim kompilieren - sondern beim starten..
2. Du hast das nicht wirklich SO da stehen, oder?
Delphi-Quelltext
1:
| AntiFreeze := TIdAntiFreeze(Self); |
Damit versuchst du gerade, das Formular (self) als IdAntiFreeze Komponente anzusprechen.. kein Wunder dass das nicht geht.
3. Wie Narses schon sagte, ist nen eigener Thread noch am schönsten.
Dude566 - Di 12.05.09 20:45
Wie geht das mit eigenen Threads bzw. was ist das?
Vielleicht einen Link zu einem Beispiel?
Edit: Hatte .Create vergessen
Delphi-Quelltext
1:
| AntiFreeze := TIdAntiFreeze.Create(self); |
Xentar - Di 12.05.09 20:56
Such mal nach TThread, da sollten sich genug Beispiele finden. Soweit ich weiß ist sogar bei Delphi eien Demo dabei.
Geht das nun, mit dem Create?
Dude566 - Di 12.05.09 21:07
Ja, nun klappt es.
Auch wenn es ein wenig lahm reagiert, so bleibt es wenigstens nicht komplett hängen wie ohne AntiFreeze.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!