Browse DevX
Sign up for e-mail newsletters from DevX

Tip of the Day
Language: VB6
Expertise: Intermediate
Sep 19, 2000



Building the Right Environment to Support AI, Machine Learning and Deep Learning

GetCookies - Get local cookies for a given URL

Private Declare Function InternetGetCookie Lib "wininet.dll" Alias _
    "InternetGetCookieA" (ByVal lpszUrlName As String, _
    ByVal lpszCookieName As String, ByVal lpszCookieData As String, _
    lpdwSize As Long) As Boolean

' Get locally-stored cookies for a specified URL
' If CookieName is omitted, returns all the cookies as
' as semicolon-delimited list of NAME=VALUE pairs

Function GetCookies(ByVal URL As String, Optional CookieName As String) As _
    Dim buffer As String
    Dim length As Long
    ' prepare the receiving buffer
    length = 10240
    buffer = Space$(length)
    ' query WinInet for cookies from this URL
    ' a zero value means failure
    If InternetGetCookie(URL, vbNullString, buffer, _
        length) = 0 Then Exit Function
    ' LENGHT has received the size of returned data
    buffer = Left$(buffer, length)
    If Len(CookieName) = 0 Then
        ' the entire cookie string was requested
        GetCookies = buffer
        ' extract one single cookie
        Dim cookies() As String
        Dim i As Long, tmp As String
        ' get the individual cookies
        cookies = Split(buffer, ";")
        ' search for the right one
        For i = 0 To UBound(cookies)
            ' trim the leading space, if any
            tmp = LTrim$(cookies(i))
            If InStr(1, tmp, CookieName & "=", vbTextCompare) = 1 Then
                ' we've got it
                GetCookies = Mid$(tmp, Len(CookieName) + 2)
                Exit For
            End If
    End If
End Function
Francesco Balena
Comment and Contribute






(Maximum characters: 1200). You have 1200 characters left.



Thanks for your registration, follow us on our social networks to keep up-to-date