Contents Index Topic Contents | ||
Previous Topic: InternetCreateUrl Next Topic: FTP Functions |
InternetOpenUrl
HINTERNET InternetOpenUrl( IN HINTERNET hInternetSession, IN LPCSTR lpszUrl, IN LPCSTR lpszHeaders, IN DWORD dwHeadersLength, IN DWORD dwFlags, IN DWORD dwContext );Begins reading a complete FTP, Gopher, or HTTP URL. Use InternetCanonicalizeUrl first if the URL being used contains a relative URL and a base URL separated by blank spaces.
- Returns a valid handle to the FTP, Gopher, or HTTP URL if the connection is successfully established, or NULL if the connection fails. To get a specific error message, call GetLastError. To determine why access to the service was denied, call InternetGetLastResponseInfo.
- hInternetSession
- Handle to the current Internet session. The handle must have been returned by a previous call to InternetOpen.
- lpszUrl
- Address of a string that contains the URL to begin reading. Only URLs beginning with ftp:, gopher:, http:, or https: are supported.
- lpszHeaders
- Address of a string that contains the headers to be sent to the HTTP server. (For more information, see the description of the lpszHeaders parameter in the HttpSendRequest function.)
- dwHeadersLength
- Length, in characters, of the additional headers. If this parameter is -1L and lpszHeaders is not NULL, lpszHeaders is assumed to be zero-terminated (ASCIIZ) and the length is calculated.
- dwFlags
- Action flags. Can be one of the following values:
- INTERNET_FLAG_DONT_CACHE
- Does not cache the data, either locally or in any gateways. Identical to the preferred value, INTERNET_FLAG_NO_CACHE_WRITE.
- INTERNET_FLAG_EXISTING_CONNECT
- If possible, reuses the existing connections to the server for new requests generated by InternetOpenUrl instead of creating a new session for each request. This flag is useful only for FTP connections, since FTP is the only protocol that typically performs multiple operations during the same session. The Win32 Internet API caches a single connection handle for each HINTERNET handle generated by InternetOpen.
- INTERNET_FLAG_HYPERLINK
- Forces a reload if there was no Expires time and no Last-Modified time returned from the server when determining whether to reload the item from the network.
- INTERNET_FLAG_IGNORE_CERT_CN_INVALID
- Disables Win32 Internet function checking of SSL/PCT-based certificates that are returned from the server against the host name given in the request. Win32 Internet functions use a simple check against certificates by comparing for matching host names and simple wildcarding rules for HTTP requests.
- INTERNET_FLAG_IGNORE_CERT_DATE_INVALID
- Disables Win32 Internet function checking of SSL/PCT-based certificates for proper validity dates for HTTP requests.
- INTERNET_FLAG_IGNORE_REDIRECT_TO_HTTP
- Disables the ability of the Win32 Internet functions to detect this special type of redirect. When this flag is used, Win32 Internet functions transparently allow redirects from HTTPS to HTTP URLs.
- INTERNET_FLAG_IGNORE_REDIRECT_TO_HTTPS
- Disables the ability of the Win32 Internet functions to detect this special type of redirect. When this flag is used, Win32 Internet functions transparently allow redirects from HTTP to HTTPS URLs.
- INTERNET_FLAG_KEEP_CONNECTION
- Uses keep-alive semantics, if available, for the connection for HTTP requests. This flag is required for Microsoft Network (MSN), NT LAN Manager (NTLM), and other types of authentication.
- INTERNET_FLAG_MAKE_PERSISTENT
- No longer supported.
- INTERNET_FLAG_MUST_CACHE_REQUEST
- Causes a temporary file to be created if the file cannot be cached. Identical to the preferred value, INTERNET_FLAG_NEED_FILE.
- INTERNET_FLAG_NEED_FILE
- Causes a temporary file to be created if the file cannot be cached.
- INTERNET_FLAG_NO_AUTH
- Does not attempt authentication automatically for HTTP requests.
- INTERNET_FLAG_NO_AUTO_REDIRECT
- Does not automatically handle redirection for HTTP requests only.
- INTERNET_FLAG_NO_CACHE_WRITE
- Does not cache the data, either locally or in any gateways.
- INTERNET_FLAG_NO_COOKIES
- Does not automatically add cookie headers to requests, and does not automatically add returned cookies to the cookie database for HTTP requests.
- INTERNET_FLAG_NO_UI
- Disables the cookie dialog box.
- INTERNET_FLAG_PASSIVE
- Uses passive FTP semantics for FTP files and directories.
- INTERNET_FLAG_RAW_DATA
- Returns the data as a GOPHER_FIND_DATA structure when retrieving Gopher directory information, or as a WIN32_FIND_DATA structure when retrieving FTP directory information. If this flag is not specified or if the call was made through a CERN proxy, InternetOpenUrl returns an HTML version of the directory.
- INTERNET_FLAG_PRAGMA_NOCACHE
- Forces the request to be resolved by the origin server, even if a cached copy exists on the proxy.
- INTERNET_FLAG_READ_PREFETCH
- This flag is currently disabled.
- INTERNET_FLAG_RELOAD
- Gets the data from the wire even if it is locally cached.
- INTERNET_FLAG_RESYNCHRONIZE
- Reloads HTTP resources if the resource has been modified since the last time it was downloaded. All FTP and Gopher resources are reloaded.
- INTERNET_FLAG_SECURE
- Requests secure transactions on the wire with SSL or PCT. This flag applies to HTTP requests only.
- dwContext
- Application-defined value that is passed, along with the returned handle, to any callback functions.
This is a general function that an application can use to retrieve data over any of the protocols that the Win32 Internet functions support. This function is particularly useful when the application does not need to access the particulars of a protocol, but only requires the data corresponding to a URL. The InternetOpenUrl function parses the URL string, establishes a connection to the server, and prepares to download the data identified by the URL. The application can then use InternetReadFile (for files) or InternetFindNextFile (for directories) to retrieve the URL data. It is not necessary to call InternetConnect before InternetOpenUrl.
InternetOpenUrl disables Gopher on ports less than 1024, except for port 70 (the standard Gopher port) and port 105 (typically used for Central Services Organization [CSO] name searches).
Use InternetCloseHandle to close the handle returned from InternetOpenUrl. However, note that closing the handle before all the URL data has been read results in the connection being terminated.
Top of Page
© 1997 Microsoft Corporation. All rights reserved. Terms of Use.