Compartir a través de


Función CommitUrlCacheEntryA (wininet.h)

Almacena datos en el archivo especificado en la memoria caché de Internet y lo asocia a la dirección URL especificada.

Sintaxis

BOOL CommitUrlCacheEntryA(
  [in] LPCSTR   lpszUrlName,
  [in] LPCSTR   lpszLocalFileName,
  [in] FILETIME ExpireTime,
  [in] FILETIME LastModifiedTime,
  [in] DWORD    CacheEntryType,
  [in] LPBYTE   lpHeaderInfo,
  [in] DWORD    cchHeaderInfo,
  [in] LPCSTR   lpszFileExtension,
  [in] LPCSTR   lpszOriginalUrl
);

Parámetros

[in] lpszUrlName

Puntero a una variable de cadena que contiene el nombre de origen de la entrada de caché. La cadena de nombre debe ser única y no debe contener caracteres de escape.

[in] lpszLocalFileName

Puntero a una variable de cadena que contiene el nombre del archivo local que se almacena en caché. Debe ser el mismo nombre que el devuelto por CreateUrlCacheEntryA.

[in] ExpireTime

estructura FILETIME que contiene la fecha y hora de expiración (en la hora media de Greenwich) del archivo que se almacena en caché. Si se desconoce la fecha y hora de expiración, establezca este parámetro en cero.

[in] LastModifiedTime

FILETIME estructura que contiene la última fecha y hora modificadas (en la hora media de Greenwich) de la dirección URL que se almacena en caché. Si se desconoce la fecha y hora de la última modificación, establezca este parámetro en cero.

[in] CacheEntryType

Máscara de bits que indica el tipo de entrada de caché y sus propiedades. Los tipos de entrada de caché incluyen: entradas del historial (URLHISTORY_CACHE_ENTRY), entradas de cookies (COOKIE_CACHE_ENTRY) y contenido almacenado en caché normal (NORMAL_CACHE_ENTRY).

Este parámetro puede ser cero o más de las marcas de propiedad siguientes y las marcas de tipo de caché enumeradas a continuación.

Valor Significado
COOKIE_CACHE_ENTRY
Entrada de caché de cookies.
EDITED_CACHE_ENTRY
Archivo de entrada de caché que se ha editado externamente. Este tipo de entrada de caché está exento del scavenging.
NORMAL_CACHE_ENTRY
Entrada de caché normal; se puede eliminar para recuperar espacio para las nuevas entradas.
SPARSE_CACHE_ENTRY
Entrada de caché de respuesta parcial.
STICKY_CACHE_ENTRY
Entrada de caché pegajosa; exento de esclusar.
TRACK_OFFLINE_CACHE_ENTRY
Actualmente no se ha implementado.
TRACK_ONLINE_CACHE_ENTRY
Actualmente no se ha implementado.
URLHISTORY_CACHE_ENTRY
Entrada de caché de vínculos visitada.

[in] lpHeaderInfo

Puntero al búfer que contiene la información de encabezado. Si este parámetro no es NULL, la información del encabezado se trata como atributos extendidos de la dirección URL que se devuelven en el miembro lpHeaderInfo de la estructura INTERNET_CACHE_ENTRY_INFO.

[in] cchHeaderInfo

Tamaño de la información de encabezado, en TCHAR. Si lpHeaderInfo no es null, se supone que este valor indica el tamaño del búfer que almacena la información de encabezado. Una aplicación puede mantener encabezados como parte de los datos y proporcionar cchHeaderInfo junto con un valor de NULL para lpHeaderInfo.

[in] lpszFileExtension

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

[in] lpszOriginalUrl

Puntero a una cadena que contiene la dirección URL original, si se ha producido el redireccionamiento.

Valor devuelto

Devuelve TRUE si se ejecuta correctamente o FALSE de lo contrario. Para obtener información de error extendida, llame a GetLastError. A continuación se muestran los valores de error posibles.

Código devuelto Descripción
ERROR_DISK_FULL
El almacenamiento en caché está lleno.
ERROR_FILE_NOT_FOUND
No se encuentra el archivo local especificado.

Observaciones

El tipo STICKY_CACHE_ENTRY se usa para hacer que las entradas de caché estén exentas del scavenging. El tiempo de exención predeterminado para las entradas establecidas con CommitUrlCacheEntryA es de diez minutos. El tiempo exento se puede cambiar estableciendo el parámetro time expira en la estructura INTERNET_CACHE_ENTRY_INFO de la llamada a la función SetUrlCacheEntryInfo.

Si el almacenamiento en caché está lleno, CommitUrlCacheEntryA invoca la limpieza de caché para hacer espacio para este nuevo archivo. Si la entrada de caché ya existe, la función sobrescribe la entrada si no está en uso. Una entrada está en uso cuando se ha recuperado con RetrieveUrlCacheEntryStream o RetrieveUrlCacheEntryFile.

Los clientes que agregan entradas a la memoria caché deben establecer los encabezados en al menos "HTTP/1.0 200 OK\r\n\r\n"; De lo contrario, Microsoft Internet Explorer y otras aplicaciones cliente deben ignorar la entrada.

Consulte de almacenamiento en caché para obtener código de ejemplo que llama a CreateUrlCacheEntryA.

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 CommitUrlCacheEntry 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