SFTP SSH.NET DLL而不是SharpSSH

bil*_*bob 0 .net c# vb.net sftp sharpssh

我正在寻找.net的免费DLL来处理SFTP连接.

我发现了这个项目SharpSSH,但它缺乏文档.

我花了很多时间来计算dll是如何工作的.我创建了一个测试项目,然后开始测试不同的功能.某些功能正在起作用,例如删除文件.

我有putfile()函数和getfile()的问题.

这是一个例子:

Dim ssh As SFTPUtil
ssh = New SFTPUtil("MY SERVER", "MY USER", "MY PW")
ssh.GetFile("/home/sftptest/test111.xml", "C:\\text.xml")
Run Code Online (Sandbox Code Playgroud)

请注意,getfile()参数是:

Public Sub GetFile(remotePath As String, localPath As String)
Run Code Online (Sandbox Code Playgroud)

我介入函数,但我没有得到正确的方法来传递这些参数.

我真的不知道我是否应该使用斜杠(/)或反斜杠().我知道Linux使用(/)

我注意到例如"C:\"已经转换为"C:\\".

只是提到SFTP是在Linux机器上.

谢谢.

bil*_*bob 6

这是我应该做的(vb.net代码)建立与连接这个库(SSHnet),我并没有使用SharpSHH:

Private Sub ButtonAction_Click(sender As Object, e As System.EventArgs) Handles ButtonAction.Click

    Dim PasswordConnection = New PasswordAuthenticationMethod("test", "test")
    Dim KeyboardInteractive = New KeyboardInteractiveAuthenticationMethod("test")
    Dim ConnectionInfo = New ConnectionInfo("192.168.1.1", 22, "test", PasswordConnection, KeyboardInteractive)

    AddHandler KeyboardInteractive.AuthenticationPrompt, _
    Sub(_sender As Object, _e As Renci.SshNet.Common.AuthenticationPromptEventArgs)
        For Each prompt In _e.Prompts
            Debug.Print(prompt.Request)
            If Not prompt.Request.IndexOf("Password:", StringComparison.InvariantCultureIgnoreCase) = -1 Then
                prompt.Response = "test"
            End If
        Next
    End Sub

    sftp = New SftpClient(ConnectionInfo)
    sftp.Connect()

    sftp.disconnect()
End Sub
Run Code Online (Sandbox Code Playgroud)