在c#中如何在SSH2上使用FTP,最好不使用第三方代码

For*_*bie 1 .net c# ftp

我正在编写一个C#应用程序,每当我尝试使用FtpWebRequest或WebClient进行任何FTP操作时,我总是得到"System.Net.WebException:底层连接已关闭:服务器提交了协议违规." 使用FTP客户端应用程序(tunnelier)连接可以很好地工作.在连接日志中,Tunnelier提到"开始新的SSH2会话"和"连接到SSH2服务器"等.另外,我读到了在谷歌上发现的一些古老线程中引起SSH的问题所以我认为这就是我遇到的问题.

我真的不想使用第三方的东西,但如果我必须,我想我会.

Nic*_*sky 5

您将FTP(FTPS)和SFTP混合在一起.它们是完全不同的协议集.SFTP不是通过SSH的普通FTP,它是另一种协议,你需要一个侧库来使用它.