2011-12-07 48 views
2

我是Delphi新手,想嘗試打破演示以瞭解它的結構。Indy 10 Delphi FTP客戶端演示錯誤

我想要得到Indy 10 Delphi FTP客戶端演示在Delphi XE2上運行。

每當我運行下載的代碼,我輸入FTP地址,用戶名,密碼等,並當FTP連接出現此錯誤:

引發的異常類$ C00000005與消息「訪問衝突在 0x0018f90e:寫地址0x0000000'

我認爲這意味着它指向空?

在這條線的調試工具,簡單點..

ChangeFTPDir(Sites[cbFTPAddress.ItemIndex].RootDir); 

什麼是消除這個錯誤(try/catch語句)或最好的辦法是有一個Delphi FTP程序的工作示例,我可以看一下?

感謝您的時間提前,

蘇菲

的過程如下:

procedure TfrmMain.ChangeFTPDir(NewDir: String); 
begin 
    FLastDirStack.Add(FTP.RetrieveCurrentDir); 
    FTP.ChangeDir(NewDir); 
    DisplayFTP; 
end; 

我認爲該網站數組不包含細節作爲FTP並連接到名稱存儲的ftp站點出現錯誤之前...

+1

是的,錯誤意味着正在寫入一個零指針。你有沒有確認'Sites []'是否被分配,ItemIndex是否大於0? 「ChangeFTPDir()」的代碼是什麼樣的? –

+0

procedure TfrmMain.ChangeFTPDir(NewDir:String); begin FLastDirStack.Add(FTP.RetrieveCurrentDir); FTP.ChangeDir(NewDir); DisplayFTP; 結束; – user1085959

回答

0

您是否使用IdAllFTPListParsers?嘗試一下。