Помоните с https

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Demonx
Бывалый
Бывалый
 
Сообщения: 237
Зарегистрирован: 25.06.2003 (Ср) 0:08
Откуда: Литва/Висагинас

Помоните с https

Сообщение Demonx » 18.12.2005 (Вс) 13:38

Народ помогите скачать картинку через https. Использую MSXML.
Изображение

Konst_One
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
Аватара пользователя
 
Сообщения: 3041
Зарегистрирован: 09.04.2004 (Пт) 13:47
Откуда: Химки

Сообщение Konst_One » 18.12.2005 (Вс) 15:58

Код: Выделить всё
Public Function POST( _
    ByVal URL As String, _
    ByVal SendQuery As String, _
    ByRef doc As MSXML2.DOMDocument, _
    Optional ByVal CertificateName As String = "") As Boolean
'<EhHeader>
On Error GoTo Err_debug
'</EhHeader>
Dim objSrvHTTP As MSXML2.ServerXMLHTTP40
Dim objXMLReceive As MSXML2.DOMDocument
Dim s As String
Dim b As String
Const lResolve As Long = 5 * 1000
Const lConnect As Long = 5 * 1000
Const lSend As Long = 15 * 1000
Const lReceive As Long = 15 * 1000

    POST = False
    mMain.LogInfo "POST: " & URL & " Message length: " & Len(SendQuery)
    Set objSrvHTTP = New MSXML2.ServerXMLHTTP40
    objSrvHTTP.setTimeouts lResolve, lConnect, lSend, lReceive
    objSrvHTTP.Open "POST", URL, False
    objSrvHTTP.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
    If VBA.Len(CertificateName) > 0 Then
        Call objSrvHTTP.setOption(SXH_OPTION_SELECT_CLIENT_SSL_CERT, CertificateName)
    End If
    objSrvHTTP.send SendQuery
    If GetHTTPStatus(objSrvHTTP.Status) = httpOK Then
        s = objSrvHTTP.getResponseHeader("Content-Type")
        Set objXMLReceive = New MSXML2.DOMDocument
        objXMLReceive.async = False
        b = objXMLReceive.loadXML(objSrvHTTP.responseText)
        objXMLReceive.setProperty "SelectionLanguage", "XPath"
        If objXMLReceive.parseError.errorCode <> 0 Then
            With objXMLReceive.parseError
            #If KP_DEBUG Then
            Debug.Print "Error: " & .errorCode & " on line " & .Line & " position " & .linepos
            Debug.Print .reason
            Debug.Print .srcText
            #End If
            mMain.LogInfo "POST: Parse Error = " & .errorCode & " on line " & .Line & " position " & .linepos
            mMain.LogInfo "POST: Parse Error = " & .srcText
            End With
        Else
            #If KP_DEBUG Then
            Debug.Print objXMLReceive.xml
            #End If
            mMain.LogInfo "POST: XML = " & objXMLReceive.xml
            Set doc = objXMLReceive
            POST = True
        End If
    Else
        mMain.LogInfo "POST: Site Error = " & objSrvHTTP.Status & " " & objSrvHTTP.statusText
        mMain.LogInfo "POST: Site Error HTML = " & objSrvHTTP.responseText
    End If
   
'<EhFooter>
lb_out:
    Set objSrvHTTP = Nothing
    Set objXMLReceive = Nothing
    Exit Function

Err_debug:
    mMain.LogError "POST"
    Resume lb_out
'</EhFooter>
End Function


CertificateName - имя сертификата


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: Google-бот, SemrushBot и гости: 40

    TopList