CommitUrlCacheEntryW

指定したファイル内のデータをインターネットキャッシュに格納し、指定した URL に関連付ける。(Unicode)

CommitUrlCacheEntryW lpszUrlName, lpszLocalFileName, ExpireTime, LastModifiedTime, CacheEntryType, lpszHeaderInfo, cchHeaderInfo, lpszFileExtension, lpszOriginalUrl

lpszUrlName : [wstr] キャッシュエントリのソース名を格納した文字列変数へのポインタ。名前文字列は一意でなければならず、エスケープ文字を含めてはならない。
lpszLocalFileName : [wstr] キャッシュされるローカルファイルの名前を格納した文字列変数へのポインタ。CreateUrlCacheEntryW で返された名前と同じ名前を指定する。
ExpireTime : [int] キャッシュ対象ファイルの有効期限の日時 (グリニッジ標準時) を格納した FILETIME 構造体。有効期限が不明な場合は、本パラメータを 0 に設定する。
LastModifiedTime : [int] キャッシュ対象 URL の最終更新日時 (グリニッジ標準時) を格納した FILETIME 構造体。最終更新日時が不明な場合は、本パラメータを 0 に設定する。
CacheEntryType : [int] キャッシュエントリの種別とプロパティを示すビットマスク。キャッシュエントリ種別には、履歴エントリ (URLHISTORY_CACHE_ENTRY)、クッキーエントリ (COOKIE_CACHE_ENTRY)、通常のキャッシュコンテンツ (NORMAL_CACHE_ENTRY) がある。本パラメータには、以下のプロパティフラグおよびキャッシュ種別フラグを 0 個以上指定できる。
lpszHeaderInfo : [wstr] ヘッダー情報を格納したバッファへのポインタ。本パラメータが NULL でない場合、ヘッダー情報は INTERNET_CACHE_ENTRY_INFO 構造体の lpHeaderInfo メンバとして返される、URL の拡張属性として扱われる。
cchHeaderInfo : [int] ヘッダー情報のサイズ (TCHAR 単位)。lpHeaderInfo が NULL でない場合、この値はヘッダー情報を格納するバッファのサイズを示すものとみなされる。アプリケーションはヘッダーをデータの一部として保持し、lpHeaderInfo に NULL を指定したうえで cchHeaderInfo を指定することもできる。
lpszFileExtension : [wstr] 本パラメータは予約されており、NULL を指定しなければならない。
lpszOriginalUrl : [wstr] リダイレクトが発生した場合の元の URL を格納した文字列へのポインタ。

(プラグイン / モジュール : wininet.dll)

解説

指定したファイル内のデータをインターネットキャッシュに格納し、指定した URL に関連付ける。(Unicode)

[戻り値]
成功した場合は TRUE を、失敗した場合は FALSE を返す。拡張エラー情報を取得するには GetLastError
を呼び出す。以下は想定されるエラー値である。
(以下省略)

[備考]
STICKY_CACHE_ENTRY
種別は、キャッシュエントリをスカベンジ対象から除外するために使用する。CommitUrlCacheEntryW
で設定したエントリの既定の除外時間は 10 分である。除外時間は、SetUrlCacheEntryInfo 関数を呼び出して
INTERNET_CACHE_ENTRY_INFO
構造体の有効期限パラメータを設定することで変更できる。キャッシュ領域が満杯の場合、CommitUrlCacheEntryW
は新しいファイル用の領域を確保するためにキャッシュクリーンアップを呼び出す。キャッシュエントリが既に存在する場合、関数は使用中でなければエントリを上書きする。エントリは
RetrieveUrlCacheEntryStream または RetrieveUrlCacheEntryFile
で取得されている間、使用中とみなされる。キャッシュにエントリを追加するクライアントは、ヘッダーを少なくとも "HTTP/1.0 200
OK\r\n\r\n" に設定する必要がある。そうしない場合、Microsoft Internet Explorer
などのクライアントアプリケーションはエントリを無視する可能性がある。CreateUrlCacheEntryW
を呼び出すサンプルコードについては Caching を参照のこと。WinINet API の他のすべての側面と同様に、本関数は
DllMain やグローバルオブジェクトのコンストラクタ・デストラクタの中から安全に呼び出すことはできない。注意: WinINet
はサーバー実装をサポートしていない。さらに、サービスから使用すべきでもない。サーバー実装やサービスでは Microsoft Windows
HTTP Services (WinHTTP) を使用すること。
> [!NOTE] > wininet.h ヘッダーは CommitUrlCacheEntry
をエイリアスとして定義しており、UNICODE プリプロセッサ定数の定義に基づいて本関数の ANSI 版または Unicode
版を自動的に選択する。エンコーディング中立のエイリアスとエンコーディング中立でないコードを混在させると、コンパイルエラーや実行時エラーの原因となるミスマッチが発生する可能性がある。詳細は
[Conventions for Function
Prototypes](/windows/win32/intl/conventions-for-function-prototypes)
を参照のこと。

情報

プラグイン / モジュールwininet.dll
バージョン1.0
作成日2026/04/16
著作者IronHSP / CsWin32 bridge
URLhttps://github.com/inovia/IronHSP
備考Win32 API の wininet.dll 関数群。CsWin32 + win32metadata から自動生成。
hsp3net 専用 (intptr / NSTRUCT / wstr を使用)。
タイプ拡張命令
グループWin32API
対応環境
  • Windows 版 HSP
hs ファイルhsphelp\win32_wininet_gen2.hs