TStringList a Memo

Reiko
  • Rejestracja: dni
  • Ostatnio: dni
0

Witam,

pisze program którego zadaniem jest podbieranie listy plików z serwera FTP do zmiennej TStringList. Po instrukcjach łączenia się z serwerem mam taki oto kod:

Kopiuj
if ftp.Connected = true then
  begin
     ShowMessage('Polaczylem sie');
     ftp.List(ListaFTP, '', false);
  end

gdzie ListaFTPto zmienna TStringList. Ta instrukcja powoduje błąd krytyczny, natomiast gdy w miejsce ListaFTP wstawię Memo1.Lines - wszystko gra. Czy jest jakiś sposób aby to przeskoczyć? Nie chcę używac wizualnych kontrolek bo odbija się to na wydajności pracy, chcę zrobić to na zmiennych.

Pozdrawiam!

Reiko
  • Rejestracja: dni
  • Ostatnio: dni
0

Proszę bardzo, zamieszczam załączniki.

KA
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Gorlice
1

Błąd access violation wskazuje na to że najprawdopodobniej nie utworzyłeś wcześniej ListaFTP ale po resztę do do wróżek jak zamiast dać więcej kodu wklejasz screeny z błędów.

TA
  • Rejestracja: dni
  • Ostatnio: dni
1

Na pewno masz gdzieś w kodzie taką linijkę

Kopiuj
ListaFTP := TStringList.Create;

Bo mi to wygląda na korzystanie z niezainicjowanej zmiennej.

Reiko
  • Rejestracja: dni
  • Ostatnio: dni
0

Ahh sorki, miałem ale w późniejszym miejscu niż go uzywałem. Moj blad. Temat do zamknięcia.

WL
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 1084
1
Reiko napisał(a):

Ahh sorki, miałem ale w późniejszym miejscu niż go uzywałem. Moj blad. Temat do zamknięcia.

To jeszcze pamiętaj o zwolnieniu tej zmiennej ListaFTP przez dodanie

Kopiuj
ListaFTP.Free;

kiedy już w/w lista nie będzie do niczego potrzebna.

Reiko
  • Rejestracja: dni
  • Ostatnio: dni
0

@wlochacz tak, wiem ale dzieki za uwage :)

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.