GetUrlCacheEntryInfoExW function (wininet.h)

Retrieves information on the cache entry associated with the specified URL, taking into account any redirections that are applied in offline mode by the HttpSendRequest function.

Syntax

BOOL GetUrlCacheEntryInfoExW(
  [in]                LPCWSTR                      lpszUrl,
  [in, out, optional] LPINTERNET_CACHE_ENTRY_INFOW lpCacheEntryInfo,
  [in, out, optional] LPDWORD                      lpcbCacheEntryInfo,
  [out]               LPWSTR                       lpszRedirectUrl,
  [in, out]           LPDWORD                      lpcbRedirectUrl,
                      LPVOID                       lpReserved,
  [in]                DWORD                        dwFlags
);

Parameters

[in] lpszUrl

A pointer to a null-terminated string that contains the name of the cache entry. The name string should not contain any escape characters.

[in, out, optional] lpCacheEntryInfo

A pointer to an INTERNET_CACHE_ENTRY_INFO structure that receives information about the cache entry. A buffer should be allocated for this parameter.

Since the required size of the buffer is not known in advance, it is best to allocate a buffer adequate to handle the size of most INTERNET_CACHE_ENTRY_INFO entries. There is no cache entry size limit, so applications that need to enumerate the cache must be prepared to allocate variable-sized buffers.

[in, out, optional] lpcbCacheEntryInfo

Pointer to a variable that specifies the size of the lpCacheEntryInfo buffer, in bytes. When the function returns, the variable contains the number of bytes copied to the buffer, or the required size of the buffer in bytes.

[out] lpszRedirectUrl

This parameter is reserved and must be NULL.

[in, out] lpcbRedirectUrl

This parameter is reserved and must be NULL.

lpReserved

This parameter is reserved and must be NULL.

[in] dwFlags

This parameter is reserved and must be 0.

Return value

Returns TRUE if the URL was located, or FALSE otherwise. Call GetLastError for specific error information. Possible errors include the following.

Return code Description
ERROR_FILE_NOT_FOUND
The URL was not found in the cache index, even after taking any cached redirections into account.
ERROR_INSUFFICIENT_BUFFER
The buffer referenced by lpCacheEntryInfo was not large enough to hold the requested information. The size of the buffer needed will be returned to lpdwCacheEntryInfoBufSize.

Remarks

GetUrlCacheEntryInfoEx does not do any URL parsing, so a URL containing an anchor (#) will not be found in the cache, even if the resource is cached. For example, if the URL http://example.com/example.htm#sample is passed, the function returns ERROR_FILE_NOT_FOUND even if http://example.com/example.htm is in the cache.

Like all other aspects of the WinINet API, this function cannot be safely called from within DllMain or the constructors and destructors of global objects.

Note  WinINet does not support server implementations. In addition, it should not be used from a service. For server implementations or services use Microsoft Windows HTTP Services (WinHTTP).
 

Note

The wininet.h header defines GetUrlCacheEntryInfoEx as an alias that automatically selects the ANSI or Unicode version of this function based on the definition of the UNICODE preprocessor constant. Mixing usage of the encoding-neutral alias with code that is not encoding-neutral can lead to mismatches that result in compilation or runtime errors. For more information, see Conventions for Function Prototypes.

Requirements

Requirement Value
Minimum supported client Windows 2000 Professional [desktop apps only]
Minimum supported server Windows 2000 Server [desktop apps only]
Target Platform Windows
Header wininet.h
Library Wininet.lib
DLL Wininet.dll

See also

Caching

WinINet Functions