我正在尝试使用Renci.SShnet.sftp库建立与ftp服务器的连接。 但是,当我调用sftp.Connect()方法时,收到以下错误消息: “套接字读取操作在30000毫秒后超时。”。 我在Visual Studio 2017上使用Visual Basic .Net。
我的代码如下:
Public Function SendFile(ByVal localFilePath As String, ByVal remotePath As String, ByRef errorReturnMessage As String) As Boolean
errorReturnMessage = ""
Try
Dim test As New Renci.SshNet.SftpClient(serverName, portNumber, userName, passWord)
test.Connect() '<==== ERROR HERE ======
test.ChangeDirectory(remotePath)
Dim str As IO.Stream
str = IO.File.OpenRead(localPathFile)
Dim result As Renci.SshNet.Sftp.SftpUploadAsyncResult = test.BeginUploadFile(str, remotePath)
Do While True
If result.IsCompleted Then
Exit Do
End If
Loop
Return True
Catch ex As Exception
errorReturnMessage = ex.Message
Return False
End Try
End Function
我正在尝试连接以上传文件。 谢谢你的帮助。
最好的问候, 丹尼尔
答案 0 :(得分:1)
感谢任何尝试帮助我的人。 我知道ftp和sFtp不同。很抱歉,我在7月16日11:35撰写评论时错了。 但是,解决方案是使用winSCP API代替Renci。 这比Renci容易得多,而且效果很好。 最好的问候...