RetrieveUrlCacheEntryStreamW

キャッシュデータにアクセスするための、最も効率的で実装非依存な手段を提供する。(Unicode)

RetrieveUrlCacheEntryStreamW lpszUrlName, lpCacheEntryInfo, lpcbCacheEntryInfo, fRandomRead, dwReserved

lpszUrlName : [wstr] キャッシュエントリのソース名を格納した null 終端文字列へのポインタ。これは一意な名前でなければならない。名前文字列にエスケープ文字を含めてはならない。
lpCacheEntryInfo : [var] キャッシュエントリの情報を受け取る INTERNET_CACHE_ENTRY_INFO 構造体へのポインタ。
lpcbCacheEntryInfo : [var] lpCacheEntryInfo バッファのサイズ (バイト単位) を指定する変数へのポインタ。関数が戻ると、変数にはバッファにコピーされたバイト数、またはバッファに必要なサイズ (バイト単位) が格納される。本バッファサイズは INTERNET_CACHE_ENTRY_INFO 構造体と、その直後に格納される関連文字列の両方を収容できなければならない点に注意。
fRandomRead : [int] ストリームをランダムアクセス用に開くかどうか。ランダムアクセス用にストリームを開くにはフラグを TRUE に設定する。
dwReserved : [int] 本パラメータは予約されており、0 を指定しなければならない。

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

解説

キャッシュデータにアクセスするための、最も効率的で実装非依存な手段を提供する。(Unicode)

[戻り値]
関数が成功した場合、戻り値は ReadUrlCacheEntryStream および UnlockUrlCacheEntryStream
関数で使用できる有効なハンドルである。関数が失敗した場合、戻り値は NULL である。拡張エラー情報を取得するには
GetLastError を呼び出す。想定されるエラー値には次のものがある。
(以下省略)

[備考]
RetrieveUrlCacheEntryStream は URL の解析を一切行わないため、アンカー (#) を含む URL
は、リソースがキャッシュされていてもキャッシュ内で見つからない。例えば
http://adatum.com/example.htm#sample
を渡した場合、http://adatum.com/example.htm がキャッシュにあっても関数は
ERROR_FILE_NOT_FOUND を返す。ファイル形式での URL データが必要ないキャッシュクライアントは、特定の URL
のデータにアクセスするために本関数を使用すべきである。WinINet API の他のすべての側面と同様に、本関数は DllMain
やグローバルオブジェクトのコンストラクタ・デストラクタの中から安全に呼び出すことはできない。注意: WinINet
はサーバー実装をサポートしていない。さらに、サービスから使用すべきでもない。サーバー実装やサービスでは Microsoft Windows
HTTP Services (WinHTTP) を使用すること。
> [!NOTE] > wininet.h ヘッダーは RetrieveUrlCacheEntryStream
をエイリアスとして定義しており、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