Archived Forum PostQuestion:
SocketConnect: www.certainty3d.com:80
HostnameResolve: www.certainty3d.com
ResolvedToIp: 192.185.5.13
SocketConnected: www.certainty3d.com:80
RequestHeader: GET /projectstore/XRu76MqZLu/metadata/Tiles%203.dot HTTP/1.1
Accept: */*
Accept-Encoding: gzip
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Accept-Language: en-us,en;q=0.5
User-Agent: Chilkat/1.0.0 (+http://www.chilkatsoft.com/ChilkatHttpUA.asp)
Host: www.certainty3d.com
Connection: Keep-Alive
HttpInfo: Begin reading response
RecvByteCount: 1
RecvBytesPerSec: 21
ResponseHeader: 
HTTP/1.1 403 Forbidden
Date: Mon, 28 Oct 2013 18:17:10 GMT
Server: Apache
Last-Modified: Fri, 30 Aug 2013 17:13:28 GMT
Accept-Ranges: bytes
Content-Length: 18156
Keep-Alive: timeout=5, max=75
Connection: Keep-Alive
Content-Type: text/html
HttpStatusCode: 403
HttpInfo: Begin reading response body...
ResponseContentLength: 18156
PercentDone: 6
PercentDone: 14
PercentDone: 22
PercentDone: 30
PercentDone: 38
PercentDone: 46
PercentDone: 54
PercentDone: 62
PercentDone: 70
PercentDone: 79
PercentDone: 87
PercentDone: 95
PercentDone: 100
ChilkatLog:
  Download:
    DllDate: Aug 15 2013
    ChilkatVersion: 9.4.1.42
    UnlockPrefix: RIEGLUHttp
    Username: MAURICIOPC:MTerneus
    Architecture: Little Endian; 32-bit
    Language: .NET 2.0
    VerboseLogging: 0
    backgroundThread: 1
    url: http://www.certainty3d.com/projectstore/XRu76MqZLu/metadata/Tiles 3.dot
    toLocalPath: C:\ZF\Tiles 3.dot
    localFileAlreadyExists: 0
    QuickGetToOutput_Download:
      qGet_1:
        simpleHttpRequest_3:
          httpMethod: GET
          requestUrl: http://www.certainty3d.com/projectstore/XRu76MqZLu/metadata/Tiles%203.dot
          Connecting to web server...
          httpServer: www.certainty3d.com
          port: 80
          ConnectTimeoutMs_1: 10000
          calling ConnectSocket2
          IPV6 enabled connect with NO heartbeat.
          connectingTo: www.certainty3d.com
          resolveHostname1:
            Resolving domain name (IPV4) via gethostbyname
          --resolveHostname1
          GetHostByNameHB_ipv4: Elapsed time: 0 millisec
          myIP_1: 192.168.2.13
          myPort_1: 55004
          connect successful (1)
          Turning on TCP_NODELAY.
          socketOptions:
            SO_SNDBUF: 8192
            SO_RCVBUF: 8192
            TCP_NODELAY: 1
          --socketOptions
          connectElapsedMs: 46
          -- BuildGetRequest --
          Not auto-adding cookies.
          sendElapsedMs: 0
          StatusCode: 403
          StatusText: Forbidden
          contentLength: 18156
          Reading response body...
          readResponseElapsedMs: 234
        --simpleHttpRequest_3
      --qGet_1
    --QuickGetToOutput_Download
    bFileDeleted: 1
    totalElapsedMs: 296
    Failed.
  --Download
--ChilkatLog
Why is this failing? works fine in C++ Fails in .net
        Public Function DownloadFile(ByVal url As String, ByVal destination As String) As Boolean
        Dim http As New Chilkat.Http()
        Dim success As Boolean
        '  Any string unlocks the component for the 1st 30-days.
        success = http.UnlockComponent("xxxxxxxxxxx")
        If (success <> True) Then
            MsgBox(http.LastErrorText)
            Exit Function
        End If
        '  Download the Python language install.
        '  Note: This URL may have changed since this example was created.
        success = http.Download(url, destination)
        If (success <> True) Then
            Debug.Print(http.LastErrorText)
            Return False
        Else
            MsgBox("Python Download Complete!")
            Return True
        End If
        'Dim success As Boolean = _http.Download(url, destination)
        'If success = False Then
        '    Debug.Print(_http.LastErrorText)
        '    Return False
        'End If
        'Return True
    End Function
                            A website can behave differently based on the User-Agent header field. For example, if you browse to a website from your iPhone, a website might recognize the user-agent as being a smart phone and then serve a different version of the site. Likewise, maybe some websites only want interactive users logging in, and check to see if it's FireFox, IE, or Chrome, and if not then rejects the request. Of course, your application could be truly interactive, it's just that it might use Chilkat HTTP to do the HTTP communications..
The 403 response code (HTTP/1.1 403 Forbidden) indicates that a login/password is required to access the resource.
Need to use http.MimicIE for the download to work.. Not sure why?