● 把 WinSCPnet.dll 加入參考
● WinSCP.exe 要在同一個目錄
● SshHostKeyFingerprint 可以透過 Putty 在第一次詢問時記下,或是刪除 Putty 的 Cache,讓 Putty 重新詢問。Putty 的 Cache 如下:
HKEY_CURRENT_USER\Software\SimonTatham\PuTTY\SshHostKeys
● 範例程式碼
Imports WinSCP
Public Sub OnlineUpdate()
Dim _SessionOptions As New SessionOptions
Dim _TransferOptions As New TransferOptions
Dim _TransferOperationResult As TransferOperationResult
Dim _Session As New Session
_SessionOptions.Protocol = Protocol.Sftp
_SessionOptions.HostName = OnlineUpdate_HostName 'IP Address
_SessionOptions.UserName = OnlineUpdate_UserName 'SFTP username
_SessionOptions.Password = OnlineUpdate_Password 'SFTP password
_SessionOptions.SshHostKeyFingerprint = OnlineUpdate_SshHostKeyFingerprint
_Session.Open(_SessionOptions)
_TransferOptions.TransferMode = TransferMode.Binary
_TransferOperationResult = _Session.PutFiles("D:\Source", "/usr/local/www/apache24/data/", False, _TransferOptions)
_TransferOperationResult.Check()
End Sub