Compartir a través de


Función RetrieveUrlCacheEntryStreamW (wininet.h)

Proporciona la forma más eficaz e independiente de la implementación para acceder a los datos de caché.

Sintaxis

HANDLE RetrieveUrlCacheEntryStreamW(
  [in]      LPCWSTR                      lpszUrlName,
  [out]     LPINTERNET_CACHE_ENTRY_INFOW lpCacheEntryInfo,
  [in, out] LPDWORD                      lpcbCacheEntryInfo,
  [in]      BOOL                         fRandomRead,
  [in]      DWORD                        dwReserved
);

Parámetros

[in] lpszUrlName

Puntero a una cadena terminada en null que contiene el nombre de origen de la entrada de caché. Debe ser un nombre único. La cadena de nombre no debe contener caracteres de escape.

[out] lpCacheEntryInfo

Puntero a una estructura de INTERNET_CACHE_ENTRY_INFO que recibe información sobre la entrada de caché.

[in, out] lpcbCacheEntryInfo

Puntero a una variable que especifica el tamaño, en bytes, del búfer de lpCacheEntryInfo. Cuando la función devuelve, la variable recibe el número de bytes copiados en el búfer o el tamaño necesario, en bytes, del búfer. Tenga en cuenta que este tamaño de búfer debe adaptarse tanto a la estructura de INTERNET_CACHE_ENTRY_INFO como a las cadenas asociadas que se almacenan inmediatamente después de él.

[in] fRandomRead

Indica si la secuencia está abierta para el acceso aleatorio. Establezca la marca en TRUE para abrir la secuencia para el acceso aleatorio.

[in] dwReserved

Este parámetro está reservado y debe ser 0.

Valor devuelto

Si la función se ejecuta correctamente, la función devuelve un identificador válido para su uso en las funciones ReadUrlCacheEntryStream y UnlockUrlCacheEntryStream.

Si se produce un error en la función, devuelve NULL. Para obtener información de error extendida, llame a GetLastError.

Entre los posibles valores de error se incluyen los siguientes.

Código devuelto Descripción
ERROR_FILE_NOT_FOUND
La entrada de caché especificada por el nombre de origen no se encuentra en el almacenamiento de caché.
ERROR_INSUFFICIENT_BUFFER
El tamaño de lpCacheEntryInfo especificado por lpdwCacheEntryInfoBufferSize no es suficiente para contener toda la información. El valor devuelto en lpdwCacheEntryInfoBufferSize indica el tamaño del búfer necesario para contener toda la información.

Observaciones

RetrieveUrlCacheEntryStream no realiza ningún análisis de direcciones URL, por lo que no se encontrará una dirección URL que contenga un delimitador (#) en la memoria caché, incluso si el recurso está almacenado en caché. Por ejemplo, si se pasa la dirección URL http://adatum.com/example.htm#sample, la función devuelve ERROR_FILE_NOT_FOUND incluso si http://adatum.com/example.htm está en la memoria caché.

Los clientes de caché que no necesitan datos de dirección URL en forma de archivo deben usar esta función para acceder a los datos de una dirección URL determinada.

Al igual que todos los demás aspectos de la API de WinINet, esta función no se puede llamar de forma segura desde DllMain ni desde los constructores y destructores de objetos globales.

Nota WinINet no admite implementaciones de servidor. Además, no se debe usar desde un servicio. En el caso de las implementaciones de servidor o los servicios, use Servicios HTTP de Microsoft Windows (WinHTTP).
 

Nota

El encabezado wininet.h define RetrieveUrlCacheEntryStream como alias que selecciona automáticamente la versión ANSI o Unicode de esta función en función de la definición de la constante de preprocesador UNICODE. La combinación del uso del alias neutral de codificación con código que no es neutral de codificación puede dar lugar a errores de coincidencia que dan lugar a errores de compilación o tiempo de ejecución. Para obtener más información, vea Conventions for Function Prototypes.

Requisitos

Requisito Valor
cliente mínimo admitido Windows 2000 Professional [solo aplicaciones de escritorio]
servidor mínimo admitido Windows 2000 Server [solo aplicaciones de escritorio]
de la plataforma de destino de Windows
encabezado de wininet.h
biblioteca de Wininet.lib
DLL de Wininet.dll

Consulte también

almacenamiento en caché

funciones winINet