InternetGetCookieExA 関数 (wininet.h)

InternetGetCookieEx 関数は、指定された URL に関連付けられている Cookie に格納されているデータを取得します。 InternetGetCookie とは異なり、InternetGetCookieEx を使用すると、信頼されていないサイトまたはサードパーティの Cookie に関連付けられた単一の Cookie 名またはポリシーによって取得されるデータを制限できます。

構文

BOOL InternetGetCookieExA(
  [in]                LPCSTR  lpszUrl,
  [in]                LPCSTR  lpszCookieName,
  [in, out, optional] LPSTR   lpszCookieData,
  [in, out]           LPDWORD lpdwSize,
  [in]                DWORD   dwFlags,
  [in]                LPVOID  lpReserved
);

パラメーター

[in] lpszUrl

取得する Cookie が関連付けられている URL を含む null で終わる文字列へのポインター。 このパラメーターを NULL にすることはできません。または InternetGetCookieEx が失敗し、 ERROR_INVALID_PARAMETER エラーが返されます。

[in] lpszCookieName

取得する Cookie の名前を含む null で終わる文字列へのポインター。 この名前では大文字と小文字が区別されます。

[in, out, optional] lpszCookieData

Cookie データを受け取るバッファーへのポインター。

[in, out] lpdwSize

DWORD 変数へのポインター。

入力時に、変数には 、pchCookieData パラメーターが指すバッファーのサイズ (TCHAR) を含める必要があります。

終了時に、関数が成功した場合、この変数には、バッファーにコピーされた Cookie データの TCHAR の数が含まれます。 nulllpszCookieData パラメーターとして渡された場合、または関数が ERROR_INSUFFICIENT_BUFFER のエラーで失敗した場合、変数には Cookie データを受信するために必要なバッファーのサイズ (BYTEs) が含まれます。

このパラメーターを NULL にすることはできません。または InternetGetCookieEx が失敗し、 ERROR_INVALID_PARAMETER エラーが返されます。

[in] dwFlags

関数が Cookie データを取得する方法を制御するフラグ。 このパラメーターには、次の値のいずれかを指定できます。

意味
INTERNET_COOKIE_HTTPONLY
"HTTPOnly" としてマークされている Cookie の取得を有効にします。

スクリプト可能なインターフェイスを公開する場合は、このフラグを使用しないでください。これはセキュリティに影響を与えるからです。 このフラグは、お客様が提供する機能拡張メカニズムを使用して、Cookie をサードパーティのコードに公開することが決してないことを保証できる場合にのみ使用することが不可欠です。

バージョン: インターネット エクスプローラー 8.0 以降が必要です。

INTERNET_COOKIE_THIRD_PARTY
指定した URL のすべての Cookie の取得がポリシーによって明示的に許可されている場合は、サードパーティの Cookie のみを取得します。
INTERNET_FLAG_RESTRICTED_ZONE
指定した URL が信頼されていない場合に許可される Cookie のみを取得します。つまり、URLZONE_UNTRUSTED ゾーンに属している場合は 。

[in] lpReserved

将来利用するために予約されています。 NULL に設定します。

戻り値

関数が成功した場合、関数は TRUE を返します。

関数が失敗した場合は、 FALSE を返します。 特定のエラー値を取得するには、 GetLastError を呼び出します。

nulllpszCookieData に渡された場合、呼び出しは成功し、関数はERROR_INSUFFICIENT_BUFFER設定されません。

この関数では、次のエラー コードを設定できます。

リターン コード 説明
ERROR_INSUFFICIENT_BUFFER
取得された Cookie データが pcchCookieData パラメーターによって指されるバッファー サイズより大きい場合、またはそのパラメーターが NULL の場合に返されます。
ERROR_INVALID_PARAMETER
pchURL または pcchCookieData パラメーターのいずれかが NULL の場合に返されます。
ERROR_NO_MORE_ITEMS
指定した Cookie データを取得できない場合に返されます。

注釈

メモ WinINet では、サーバーの実装はサポートされていません。 また、サービスから使用しないでください。 サーバーの実装またはサービスの場合は、 Microsoft Windows HTTP サービス (WinHTTP) を使用します。
 

注意

wininet.h ヘッダーは、Unicode プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして InternetGetCookieEx を定義します。 エンコードに依存しないエイリアスをエンコードニュートラルでないコードと組み合わせて使用すると、コンパイルまたはランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「 関数プロトタイプの規則」を参照してください。

要件

要件
サポートされている最小のクライアント Windows XP (デスクトップ アプリのみ)
サポートされている最小のサーバー Windows Server 2003 (デスクトップ アプリのみ)
対象プラットフォーム Windows
ヘッダー wininet.h
Library Wininet.lib
[DLL] Wininet.dll

こちらもご覧ください

HTTP Cookie

InternetGetCookie

InternetSetCookie

InternetSetCookieEx

Cookie の管理

WinINet 関数