В течение многих лет приведенный ниже код работал. Затем 11 апреля он прекратился. Я заметил в Visual Studio предупреждение о том, что пакет SSH.NET устарел, поэтому я обновил пакет... все равно не работает.
Protected Sub FTPUpload(ByVal fileToBeUploaded As String, uploadedFilename As String)
Try
Using sftp As New SftpClient(sFtpServer, sFtpCreditUser, sFtpCreditPW)
sftp.Connect()
Dim upFile As Stream = File.OpenRead(fileToBeUploaded)
sftp.UploadFile(upFile, uploadedFilename)
upFile.Close()
sftp.Disconnect()
End Using
Catch ex As Exception
MsgBox(ex.Message & Chr(13) & Chr(10) & uploadedFilename)
End Try
End Sub
Выброшено исключение:
Renci.SshNet.Common.SshConnectionException в Renci.SshNet.dll
Renci.SshNet.Common.SshConnectionException: установленное соединение было прервано программным обеспечением на вашем хост-компьютере. waitHandle)
в Renci.SshNet.Session.Connect()
в Renci.SshNet.BaseClient.Connect()
в InvManager.Main.FTPUpload(String fileToBeUploaded, String uploadedFilename) в C:\Data\ vb.net\InvManager2.3\InvManager\Main.vb:строка 562
Убедитесь, что учетные данные все еще действительны на стороне сервера.
Журнал FileZilla, показывающий SFTP-соединение из того же окна Windows, на котором запущен код VB, с сервером:
Status: Connecting to server.com...
Response: fzSftp started, protocol_version=8
Command: open "[email protected]" 22
Command: Pass: ******
Status: Connected to server.com
Status: Retrieving directory listing...
Command: pwd
Response: Current directory is: "/home/server"
Command: ls
Status: Listing directory /home/server
Status: Directory listing of "/home/server" successful
Status: Disconnected from server
Был бы признателен за помощь в получении этой работы снова.