ссылка на COM-библиотеку WinSCP из VB6

Я пытаюсь использовать библиотеку 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 & "!")

person Rob    schedule 13.10.2014    source источник
comment
Я смог обойти это, используя On Error Resume Next в верхней части сабвуфера. Затем он показывает 3-й MsgBox и свойство, поэтому все это выглядит скрытым, но все еще работает правильно. Теперь я могу сгенерировать вызов SFTP.   -  person Rob    schedule 13.10.2014
comment
Пожалуйста, рассмотрите возможность закрытия вашего вопроса.   -  person Martin Prikryl    schedule 13.10.2014


Ответы (1)


См. выше, использование On Error Resume Next избавило меня от ошибки.

person Rob    schedule 14.10.2014