Я использую приведенный ниже фрагмент кода для подключения к серверу, используя wininet.dll
в VBA, но не могу подключиться к нему. Но когда я пытаюсь подключиться к серверу с помощью WinSCP 5.15.1, он может подключиться. И когда я пытаюсь использовать версию 5.5.5.0 WinSCP, она показывает ошибку «Не удалось согласовать алгоритм обмена ключами» . Он также показывает ошибку входа в систему, когда я пытаюсь подключить его с помощью команды ftp
в cmd
.
Мне интересно, можно ли подключиться к серверу, используя wininet.dll
в VBA, исправив любую вещь?
Public Function checkFTPpath(ByVal ServerName, ByVal Username, ByVal password, ByVal remote_path) As Boolean
Dim hostFile As String
Dim INet As Long
Dim INetConn As Long
Dim RetVal As Long
Dim Success As Boolean
Success = False
RetVal = False
INet = InternetOpen("MyFTP Control", 1&, vbNullString, vbNullString, 0&)
If INet > 0 Then
INetConn = InternetConnect(INet, ServerName, 21, Username, password, 1&, 0&, 0&)
If INetConn > 0 Then
Success = FtpSetCurrentDirectory(INetConn, "/")
Success = FtpSetCurrentDirectory(INetConn, remote_path)
RetVal = InternetCloseHandle(INetConn)
End If
RetVal = InternetCloseHandle(INet)
End If
checkFTPpath = Success
End Function