InternetGetCookieW 関数 (wininet.h)
指定した URL の Cookie を取得します。
構文
BOOL InternetGetCookieW(
[in] LPCWSTR lpszUrl,
[in] LPCWSTR lpszCookieName,
[out] LPWSTR lpszCookieData,
[in, out] LPDWORD lpdwSize
);
パラメーター
[in] lpszUrl
クッキーを取得する URL を指定する null で終わる文字列へのポインター。
[in] lpszCookieName
実装されていません。
[out] lpszCookieData
Cookie データを受け取るバッファーへのポインター。 このパラメーターは、NULL でもかまいません。
[in, out] lpdwSize
TCHAR の lpszCookieData パラメーター バッファーのサイズを指定する変数へのポインター。 関数が成功すると、バッファーは lpszCookieData バッファーにコピーされたデータの量を受け取ります。 lpszCookieData が NULL の場合、このパラメーターは、すべての Cookie データをコピーするために必要なバッファーのサイズをバイト数で表す値を受け取ります。
戻り値
関数が成功した場合、関数は TRUE を返します。
関数が失敗した場合は、 FALSE を返します。 拡張エラー データを取得するには、 GetLastError を呼び出します。
次のエラー値は 、InternetGetCookie に適用されます。
リターン コード | 説明 |
---|---|
|
指定した URL とそのすべての親に対する Cookie はありません。 |
|
lpdwSize に渡される値は、すべての Cookie データをコピーするには不十分です。 lpdwSize で返される値は、すべてのデータを取得するために必要なバッファーのサイズです。 |
|
1 つ以上のパラメーターが無効です。
lpszUrl パラメーターは NULL です。 |
注釈
InternetGetCookie では、 InternetOpen の呼び出しは必要ありません。 InternetGetCookie は 、windows\cookies ディレクトリで、有効期限が将来設定されている永続的な Cookie を確認します。 InternetGetCookie では、セッション Cookie ( InternetSetCookie によって同じプロセスで作成された有効期限のない Cookie) もメモリで検索されます。これらの Cookie はどのファイルにも書き込まれていないためです。 Cookie ファイルを作成するための規則は、システムの内部であり、将来変更される可能性があります。
HTTP Cookie で説明したように、InternetGetCookie は、サーバーが Set-Cookie ヘッダーに "HttpOnly" 属性を持つスクリプト不可としてマークされた Cookie を返しません。
WinINet API の他のすべての側面と同様に、この関数を DllMain またはグローバル オブジェクトのコンストラクターとデストラクター内から安全に呼び出すことはできません。
注意
wininet.h ヘッダーは、Unicode プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして InternetGetCookie を定義します。 エンコードに依存しないエイリアスをエンコードニュートラルでないコードと組み合わせて使用すると、コンパイルまたはランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「 関数プロトタイプの規則」を参照してください。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 2000 Professional [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows 2000 Server [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | wininet.h |
Library | Wininet.lib |
[DLL] | Wininet.dll |