Я пытаюсь использовать библиотеку WinSCP COM в своем старом проекте VB6, который у меня есть (это устаревшее приложение, которое генерирует файл OCX, я думаю, что мы должны использовать для него VB6, но не уверен на 100%).
В любом случае мы хотим внедрить SFTP, и WinSCP легко это сделает.
Я зарегистрировал COM-объект и могу видеть библиотеку типов WinSCPNet, когда добавляю ссылку. Однако я не вижу свойства/методы классов, когда смотрю на библиотеку в обозревателе объектов. Далее этот код дает сбой, он не попадает в 3-й MsgBox ("В SendWinSCP4"), он возвращается из функции в этот момент, я думаю, потому что свойство UserName не выставляется.
MsgBox ("in SendWinSCP")
Dim session As WinSCPnet.session
Dim sessionOptions As WinSCPnet.sessionOptions
Dim transferOptions As WinSCPnet.transferOptions
Set session = New WinSCPnet.session
Set sessionOptions = New WinSCPnet.sessionOptions
Set transferOptions = New WinSCPnet.transferOptions
MsgBox ("in SendWinSCP3")
sessionOptions.Protocol = Protocol_Sftp
sessionOptions.HostName = "example.com"
sessionOptions.UserName = "user"
sessionOptions.Password = "example.com"
sessionOptions.SshHostKeyFingerprint = "ssh-rsa 2048 xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx"
MsgBox ("in SendWinSCP4 " & sessionOptions.HostName & "!")