2011-04-25 45 views
2

我有C#代碼去跟它禁用了身份驗證的FTP服務器(需要的任何用戶名和密碼):MONO FTP客戶端錯誤 - 530用戶拒絕訪問

Stream responseStream = null; 
FtpWebRequest request = WebRequest.Create("ftp://" + at.IP + "/" + destFilePath) as  FtpWebRequest; 
request.Method = WebRequestMethods.Ftp.DeleteFile; 
request.GetResponse(); 
responseStream.Close(); 

當我運行這段代碼在Windows中不單聲道,它的作品。當我使用mono appName.exe在unix中運行它時,它可以工作。但是,當我創建一個C++應用程序時,.dll文件加載到單疇,然後嘗試調用它,我得到這個(.NET V2.0.50727,MONO 2.6.4):

System.Net.WebException: Server returned an error: 530-User Access denied. 
530- 
530-Usage: USER [email protected] 
530  PASS userpassword 
    at System.Net.FtpWebRequest.Authenticate() [0x00000] in <filename unknown>:0 
    at System.Net.FtpWebRequest.OpenControlConnection() [0x00000] in <filename unknown>:0 
    at System.Net.FtpWebRequest.ProcessMethod() [0x00000] in <filename unknown>:0 
    at System.Net.FtpWebRequest.ProcessRequest() [0x00000] in <filename unknown>:0 

這是怎麼回事? FTP服務器可以從Windows和Unix命令行訪問。

+0

像Wireshark這樣的網絡記錄器應該告訴你它們有什麼區別。 – Foole 2011-04-26 01:02:10

回答

0

即使FTP服務器說它是開放的,你通常必須用[email protected]或類似的東西登錄。

相關問題