6 ответов:
Edit: этот ответ уже давно и больше не действителен. См. комментарий
вы можете посмотреть a SharpSSH. Он поддерживает SFTP из коробки, и это открытый источник.
может быть, вы можете сценарий / контроль winscp?
обновление: winscp теперь имеет библиотека .NET доступно как пакет nuget который поддерживает SFTP, SCP и FTPS
следующий код показывает, как загрузить файл на сервер SFTP с помощью нашего Rebex по SFTP компонент.
// create client, connect and log in Sftp client = new Sftp(); client.Connect(hostname); client.Login(username, password); // upload the 'test.zip' file to the current directory at the server client.PutFile(@"c:\data\test.zip", "test.zip"); client.Disconnect();вы можете записать полный журнал связи в файл, используя свойство LogWriter следующим образом. Примеры вывода (из FTP-компонента, но выход SFTP аналогичен) можно найти здесь.
client.LogWriter = new Rebex.FileLogWriter( @"c:\temp\log.txt", Rebex.LogLevel.Debug);или перехватить сообщение, используя события следующим образом:
Sftp client = new Sftp(); client.CommandSent += new SftpCommandSentEventHandler(client_CommandSent); client.ResponseRead += new SftpResponseReadEventHandler(client_ResponseRead); client.Connect("sftp.example.org"); //... private void client_CommandSent(object sender, SftpCommandSentEventArgs e) { Console.WriteLine("Command: {0}", e.Command); } private void client_ResponseRead(object sender, SftpResponseReadEventArgs e) { Console.WriteLine("Response: {0}", e.Response); }подробнее:учебник или скачать пробная версия и проверка образцы.
нет никакого решения для этого в рамках .net framework.
http://www.eldos.com/sbb/sftpcompare.php очерчивает список несвободных опций.
ваш Лучшие бесплатные ставки, чтобы продлить SSH, используя Гранадос. http://www.routrek.co.jp/en/product/varaterm/granados.html
к сожалению, это не в самой платформе .NET Framework. Я хочу, чтобы вы могли интегрироваться с FileZilla, но я не думаю, что он предоставляет интерфейс. У них есть сценарии, я думаю, но это будет не так чисто, очевидно.
Я использовал CuteFTP в проекте, который делает SFTP. Он предоставляет com-компонент, вокруг которого я создал оболочку .NET. Загвоздка, вы найдете, это разрешения. Он прекрасно работает под учетными данными Windows, которые установили CuteFTP, но работает под для других учетных данных необходимо установить разрешения в DCOM.
для другого варианта un-free попробуйте edtFTPnet / PRO. Он имеет всестороннюю поддержку SFTP, а также поддерживает FTPS (и, конечно, FTP) при необходимости.
Comments