CInternetSession クラス

単一のインターネット セッションまたは複数の同時インターネット セッションを作成し、初期化します。必要な場合は、プロキシ サーバーへの接続も記述します。

構文

class CInternetSession : public CObject

メンバー

パブリック コンストラクター

名前 説明
CInternetSession::CInternetSession CInternetSession オブジェクトを構築します。

パブリック メソッド

名前 説明
CInternetSession::Close インターネット セッションが終了したときにインターネット接続を閉じます。
CInternetSession::EnableStatusCallback 状態コールバック ルーチンを確立します。
CInternetSession::GetContext インターネット セッションが終了したときにインターネット接続を閉じます。
CInternetSession::GetCookie 指定した URL とそのすべての親 URL の Cookie を返します。
CInternetSession::GetCookieLength バッファーに格納されている Cookie の長さを指定する変数を取得します。
CInternetSession::GetFtpConnection サーバーとの FTP セッションを開きます。 ユーザーにログを記録します。
CInternetSession::GetGopherConnection 接続を開こうとしているアプリケーションの gopher サーバーを開きます。
CInternetSession::GetHttpConnection 接続を開こうとしているアプリケーションの HTTP サーバーを開きます。
CInternetSession::OnStatusCallback 状態コールバックが有効になっている場合の操作の状態を更新します。
CInternetSession::OpenURL URL を解析して開きます。
CInternetSession::SetCookie 指定した URL の Cookie を設定します。
CInternetSession::SetOption インターネット セッションのオプションを設定します。

パブリック演算子

名前 説明
CInternetSession::operator HINTERNET 現在のインターネット セッションへのハンドル。

解説

アプリケーションの期間中、インターネット接続を維持する必要がある場合は、クラスCWinAppのメンバーをCInternetSession作成できます。

インターネット セッションを確立したら、 OpenURL. CInternetSession 次に、グローバル関数 AfxParseURLを呼び出して URL を解析します。 プロトコルの種類に関係なく、 CInternetSession URL を解釈して管理します。 URL リソース "file://" で識別されたローカル ファイルの要求を処理できます。 OpenURL は、渡す名前がローカル ファイルの場合、オブジェクトへの CStdioFile ポインターを返します。

インターネット サーバーで URL を開 OpenURLく場合は、サイトから情報を読み取ることができます。 サーバー上のファイルに対してサービス固有のアクション (HTTP、FTP、gopher など) を実行する場合は、そのサーバーとの適切な接続を確立する必要があります。 特定の種類の接続を特定のサービスに直接開くには、次のいずれかのメンバー関数を使用します。

  • GetGopherConnection をクリックして、gopher サービスへの接続を開きます。

  • GetHttpConnection をクリックして HTTP サービスへの接続を開きます。

  • GetFtpConnection をクリックして FTP サービスへの接続を開きます。

SetOption では、タイムアウト値、再試行回数など、セッションのクエリ オプションを設定できます。

CInternetSessionSetCookieは、GetCookieWin32 Cookie データベースを管理するための手段を提供しますGetCookieLength。これにより、サーバーとスクリプトはクライアント ワークステーションに関する状態情報を保持します。

基本的なインターネット プログラミング タスクの詳細については、 インターネットファーストステップの WinInet記事を参照してください。 MFC WinInet クラスの使用に関する一般的な情報については、 インターネット プログラミング WinInetに関する記事を参照してください。

注意

CInternetSession では、 AfxThrowNotSupportedException サポートされていないサービスの種類に対してスローされます。 現在サポートされているサービスの種類は、FTP、HTTP、gopher、ファイルのみです。

継承階層

CObject
    CInternetSession

必要条件

ヘッダー:afxinet.h

CInternetSession::CInternetSession

このメンバー関数は、オブジェクトの作成時に CInternetSession 呼び出されます。

CInternetSession(
    LPCTSTR pstrAgent = NULL,
    DWORD_PTR dwContext = 1,
    DWORD dwAccessType = PRE_CONFIG_INTERNET_ACCESS,
    LPCTSTR pstrProxyName = NULL,
    LPCTSTR pstrProxyBypass = NULL,
    DWORD dwFlags = 0);

パラメーター

pstrAgent
インターネット関数 ("Microsoft Internet Browser" など) を呼び出すアプリケーションまたはエンティティの名前を識別する文字列へのポインター。 (既定値) の場合 pstrAgent 、フレームワークは NULL グローバル関数を呼び出します。この関数 AfxGetAppNameは、アプリケーションの名前を含む null で終わる文字列を返します。 一部のプロトコルでは、この文字列を使用して、サーバーへのアプリケーションを識別します。

dwContext
操作のコンテキスト識別子。 dwContext によって返される操作の状態情報を CInternetSession::OnStatusCallback識別します。 既定値は 1 に設定されています。ただし、操作の特定のコンテキスト ID を明示的に割り当てることができます。 オブジェクトとその作業は、そのコンテキスト ID に関連付けられます。

dwAccessType
必要なアクセスの種類。 有効な値を次に示します。そのうちの 1 つを指定できます。

  • INTERNET_OPEN_TYPE_PRECONFIG レジストリで構成済みの設定を使用して接続します。 このアクセスの種類は既定として設定されます。 TIS プロキシ経由で接続するには、この値に設定 dwAccessType し、レジストリを適切に設定します。

  • INTERNET_OPEN_TYPE_DIRECT インターネットに直接接続します。

  • INTERNET_OPEN_TYPE_PROXY CERN プロキシ経由で接続します。

さまざまな種類のプロキシとの接続の詳細については、「 一般的な FTP クライアント アプリケーションの手順」を参照してください。

pstrProxyName
優先 CERN プロキシの名前 (設定されているINTERNET_OPEN_TYPE_PROXY場合dwAccessType)。 既定では、 NULLです。

pstrProxyBypass
オプションのサーバー アドレスの一覧を含む文字列へのポインター。 プロキシ アクセスを使用する場合、これらのアドレスはバイパスされる可能性があります。 値を NULL 指定すると、バイパス リストがレジストリから読み取られます。 このパラメーターは、次に設定されている場合 dwAccessType にのみ意味があります INTERNET_OPEN_TYPE_PROXY

dwFlags
さまざまなキャッシュ オプションを示します。 既定値は 0 に設定されています。 指定できる値は次のとおりです。

  • INTERNET_FLAG_DONT_CACHE ローカルまたは任意のゲートウェイ サーバーにデータをキャッシュしないでください。

  • INTERNET_FLAG_OFFLINE ダウンロード操作は、永続キャッシュを介してのみ満たされます。 項目がキャッシュに存在しない場合は、適切なエラー コードが返されます。 このフラグは、ビットごとの "or" (|) 演算子と組み合わせることができます。

解説

CInternetSession は、アプリケーションによって呼び出される最初のインターネット関数です。 内部データ構造を初期化し、アプリケーションからの今後の呼び出しに備えます。

インターネット接続を開けなかった場合は、 CInternetSessionAfxThrowInternetException.

CFtpFileFind の例を参照してください。

CInternetSession::Close

アプリケーションでオブジェクトの使用が完了したら、このメンバー関数を CInternetSession 呼び出します。

virtual void Close();

CFtpFileFind の例を参照してください。

CInternetSession::EnableStatusCallback

状態コールバックを有効にするには、このメンバー関数を呼び出します。

BOOL EnableStatusCallback(BOOL bEnable = TRUE);

パラメーター

bEnable
コールバックが有効か無効かを指定します。 既定では、 TRUEです。

戻り値

正常終了した場合は 0 以外を返します。それ以外の場合は 0 を返します。 呼び出しが失敗した場合は、スローされた CInternetException オブジェクトを調べることで、エラーの原因を特定します。

解説

状態コールバックを処理するときに、アプリケーションのステータス バーに操作の進行状況に関する状態 (名前の解決、サーバーへの接続など) を指定できます。 長期的な操作では、操作の状態を表示することが特に望ましいです。

コールバックは要求の処理中に発生するため、アプリケーションは、ネットワークへのデータ スループットの低下を防ぐために、コールバックにできるだけ少ない時間を費やす必要があります。 たとえば、コールバックにダイアログ ボックスを配置すると、サーバーが要求を終了する処理が長い場合があります。

コールバックが保留中である限り、状態コールバックを削除することはできません。

操作を非同期的に処理するには、独自のスレッドを作成するか、MFC を使用せずに WinInet 関数を使用する必要があります。

CInternetSession::GetContext

このメンバー関数を呼び出して、特定のアプリケーション セッションのコンテキスト値を取得します。

DWORD_PTR GetContext() const;

戻り値

アプリケーション定義コンテキスト識別子。

解説

OnStatusCallback は、特定のアプリケーションの状態を報告するために返される GetContext コンテキスト ID を使用します。 たとえば、ユーザーが状態情報の返しを伴うインターネット要求をアクティブ化すると、状態コールバックはコンテキスト ID を使用してその特定の要求の状態を報告します。 ユーザーが 2 つの個別のインターネット要求をアクティブ化し、両方が状態情報を返す場合は、コンテキスト識別子を使用して、 OnStatusCallback 対応する要求に関する状態を返します。 その結果、コンテキスト識別子はすべての状態コールバック操作に使用され、セッションが終了するまでセッションに関連付けられます。

非同期操作の詳細については、 インターネットの最初の手順: WinInet に関する記事を参照してください。

CInternetSession::GetCookie

このメンバー関数は、Windows SDK で説明されているように、Win32 関数 InternetGetCookieの動作を実装します。

static BOOL GetCookie(
    LPCTSTR pstrUrl,
    LPCTSTR pstrCookieName,
    LPTSTR pstrCookieData,
    DWORD dwBufLen);

static BOOL GetCookie(
    LPCTSTR pstrUrl,
    LPCTSTR pstrCookieName,
    CString& strCookieData);

パラメーター

pstrUrl
URL を含む文字列へのポインター。

pstrCookieName
指定した URL に対して取得する Cookie の名前を含む文字列へのポインター。

pstrCookieData
最初のオーバーロードでは、Cookie データを受信するバッファーのアドレスを含む文字列へのポインター。 この値は、NULL の場合もあります。 2 番目のオーバーロードでは、Cookie データを CString 受け取るオブジェクトへの参照。

dwBufLen
バッファーのサイズを指定する pstrCookieData 変数。 関数が成功すると、バッファーはバッファーにコピーされたデータの量を pstrCookieData 受け取ります。 その場合 pstrCookieData 、このパラメーターは NULL、すべての Cookie データをコピーするために必要なバッファーのサイズを指定する値を受け取ります。

戻り値

成功した TRUE 場合は返します。それ FALSE 以外の場合は返します。 呼び出しが失敗した場合は、Win32 関数 GetLastError を呼び出して、エラーの原因を特定します。 次のエラー値が適用されます。

  • ERROR_NO_MORE_ITEMS 指定された URL とそのすべての親に対する Cookie はありません。

  • ERROR_INSUFFICIENT_BUFFER 渡された dwBufLen 値は、すべての Cookie データをコピーするには不十分です。 返される dwBufLen 値は、すべてのデータを取得するために必要なバッファーのサイズです。

解説

2 番目のオーバーロードでは、MFC は Cookie データを指定された CString オブジェクトに取得します。

CInternetSession::GetCookieLength

バッファーに格納されている Cookie の長さを取得するには、このメンバー関数を呼び出します。

static DWORD GetCookieLength(
    LPCTSTR pstrUrl,
    LPCTSTR pstrCookieName);

パラメーター

pstrUrl
URL を含む文字列へのポインター

pstrCookieName
Cookie の名前を含む文字列へのポインター。

戻り値

DWORDバッファーに格納されている Cookie の長さを示す値。 指定された pstrCookieName 名前の Cookie が存在しない場合は 0。

解説

この値は.GetCookie

CInternetSession::GetFtpConnection

このメンバー関数を呼び出して FTP 接続を確立し、オブジェクトへのポインターを CFtpConnection 取得します。

CFtpConnection* GetFtpConnection(
    LPCTSTR pstrServer,
    LPCTSTR pstrUserName = NULL,
    LPCTSTR pstrPassword = NULL,
    INTERNET_PORT nPort = INTERNET_INVALID_PORT_NUMBER,
    BOOL bPassive = FALSE);

パラメーター

pstrServer
FTP サーバー名を含む文字列へのポインター。

pstrUserName
ログインするユーザーの名前を指定する null で終わる文字列へのポインター。 の場合 NULL、既定値は匿名です。

pstrPassword
ログインに使用するパスワードを指定する null で終わる文字列へのポインター。 両方pstrPasswordともpstrUserNameNULL、既定の匿名パスワードはユーザーの電子メール名です。 (NULLまたは空の文字列) でpstrUserName、そうでないNULL場合pstrPasswordは、空白のパスワードが使用されます。 次の表では、次の 4 つの設定pstrUserNamepstrPasswordの動作について説明します。

pstrUserName pstrPassword FTP サーバーに送信されたユーザー名 FTP サーバーに送信されたパスワード
NULL または " " NULL または " " "anonymous" ユーザーのメール名
NULL文字列以外 NULL または " " pstrUserName " "
NULL NULL文字列以外 ERROR ERROR
NULL文字列以外 NULL文字列以外 pstrUserName pstrPassword

nPort
サーバーで使用する TCP/IP ポートを識別する数値。

bPassive
この FTP セッションのパッシブ モードまたはアクティブ モードを指定します。 に TRUE設定すると、Win32 API dwFlagINTERNET_FLAG_PASSIVEが .

戻り値

CFtpConnection オブジェクトを指すポインターです。 呼び出しが失敗した場合は、スローされた CInternetException オブジェクトを調べることで、エラーの原因を特定します。

解説

GetFtpConnection は FTP サーバーに接続し、オブジェクトへのポインターを作成して CFTPConnection 返します。 サーバーに対して特定の操作は実行されません。 たとえば、ファイルの読み取りまたは書き込みを行う場合は、これらの操作を個別の手順として実行する必要があります。 クラス CFtpConnection と、 CFtpFileFind ファイルの検索、ファイルの開き方、ファイルへの読み取りまたは書き込みの詳細を参照してください。 一般的な FTP 接続タスクを実行する手順については、 WinInet を使用したインターネット プログラミング に関する記事を参照してください。

CFtpFileFind の例を参照してください。

CInternetSession::GetGopherConnection

このメンバー関数を呼び出して、新しい gopher 接続を確立し、オブジェクトへのポインターを CGopherConnection 取得します。

CGopherConnection* GetGopherConnection(
    LPCTSTR pstrServer,
    LPCTSTR pstrUserName = NULL,
    LPCTSTR pstrPassword = NULL,
    INTERNET_PORT nPort = INTERNET_INVALID_PORT_NUMBER);

パラメーター

pstrServer
gopher サーバー名を含む文字列へのポインター。

pstrUserName
ユーザー名を含む文字列へのポインター。

pstrPassword
アクセス パスワードを含む文字列へのポインター。

nPort
サーバーで使用する TCP/IP ポートを識別する数値。

戻り値

CGopherConnection オブジェクトを指すポインターです。 呼び出しが失敗した場合は、スローされた CInternetException オブジェクトを調べることで、エラーの原因を特定します。

解説

GetGopherConnection は gopher サーバーに接続し、オブジェクトへのポインターを作成して CGopherConnection 返します。 サーバーに対して特定の操作は実行されません。 たとえば、データの読み取りまたは書き込みを行う場合は、これらの操作を個別の手順として実行する必要があります。 クラスCGopherConnectionCGopherFile、およびCGopherFileFindファイルの検索、ファイルの開き方、ファイルへの読み取りまたは書き込みの詳細を参照してください。 FTP サイトの参照については、メンバー関数 OpenURLを参照してください。 一般的な gopher 接続タスクを実行する手順については、 WinInet を使用したインターネット プログラミングに関する記事を参照してください。

CInternetSession::GetHttpConnection

このメンバー関数を呼び出して HTTP 接続を確立し、オブジェクトへのポインターを CHttpConnection 取得します。

CHttpConnection* GetHttpConnection(
    LPCTSTR pstrServer,
    INTERNET_PORT nPort = INTERNET_INVALID_PORT_NUMBER,
    LPCTSTR pstrUserName = NULL,
    LPCTSTR pstrPassword = NULL);

CHttpConnection* GetHttpConnection(
    LPCTSTR pstrServer,
    DWORD dwFlags,
    INTERNET_PORT nPort = INTERNET_INVALID_PORT_NUMBER,
    LPCTSTR pstrUserName = NULL,
    LPCTSTR pstrPassword = NULL);

パラメーター

pstrServer
HTTP サーバー名を含む文字列へのポインター。

nPort
サーバーで使用する TCP/IP ポートを識別する数値。

pstrUserName
ユーザー名を含む文字列へのポインター。

pstrPassword
アクセス パスワードを含む文字列へのポインター。

dwflags
フラグの任意の INTERNET_FLAG_* 組み合わせ。 値の説明については、「 解説 」セクションの CHttpConnection::OpenRequest 表を参照 dwFlags してください。

戻り値

CHttpConnection オブジェクトを指すポインターです。 呼び出しが失敗した場合は、スローされた CInternetException オブジェクトを調べることで、エラーの原因を特定します。

解説

GetHttpConnection は HTTP サーバーに接続し、オブジェクトへのポインターを作成して CHttpConnection 返します。 サーバーに対して特定の操作は実行されません。 たとえば、HTTP ヘッダーに対してクエリを実行する場合は、別の手順としてこの操作を実行する必要があります。 HTTP サーバーへの接続を使用して実行できる操作については、クラス CHttpConnectionCHttpFile 詳細を参照してください。 HTTP サイトの参照については、メンバー関数 OpenURLを参照してください。 一般的な HTTP 接続タスクを実行する手順については、 WinInet を使用したインターネット プログラミング に関する記事を参照してください。

CInternetSession::OnStatusCallback

このメンバー関数は、状態コールバックが有効になっていて、操作が保留中のときに状態を更新するためにフレームワークによって呼び出されます。

virtual void OnStatusCallback(
    DWORD_PTR dwContext,
    DWORD dwInternetStatus,
    LPVOID lpvStatusInformation,
    DWORD dwStatusInformationLength);

パラメーター

dwContext
アプリケーションによって提供されるコンテキスト値。

dwInternetStatus
コールバックが行われている理由を示す状態コード。 使用可能 な値の 表については、「解説」を参照してください。

lpvStatusInformation
このコールバックに関連する情報を含むバッファーへのポインター。

dwStatusInformationLength
lpvStatusInformation のサイズ。

解説

まず、状態コールバックを利用するために呼び出す EnableStatusCallback 必要があります。

このパラメーターは dwInternetStatus 、実行される操作を示し、その内容 lpvStatusInformation を決定します。 dwStatusInformationLength に含まれる lpvStatusInformationデータの長さを示します。 次のステータス値 dwInternetStatus は、次のように定義されます。

意味
INTERNET_STATUS_RESOLVING_NAME に含まれる lpvStatusInformation名前の IP アドレスを調べること。
INTERNET_STATUS_NAME_RESOLVED に含まれる名前の IP アドレスが正常に lpvStatusInformation見つかりました。
INTERNET_STATUS_CONNECTING_TO_SERVER によってlpvStatusInformation指されるソケット アドレス (SOCKADDR) への接続。
INTERNET_STATUS_CONNECTED_TO_SERVER によって指されるソケット アドレス (SOCKADDR) に正常に lpvStatusInformation接続されました。
INTERNET_STATUS_SENDING_REQUEST サーバーへの情報要求の送信。 lpvStatusInformation パラメーターが NULL です。
INTERNET_STATUS_REQUEST_SENT 情報要求をサーバーに正常に送信しました。 lpvStatusInformation パラメーターが NULL です。
INTERNET_STATUS_RECEIVING_RESPONSE サーバーが要求に応答するのを待機しています。 lpvStatusInformation パラメーターが NULL です。
INTERNET_STATUS_RESPONSE_RECEIVED サーバーから応答を正常に受信しました。 lpvStatusInformation パラメーターが NULL です。
INTERNET_STATUS_CLOSING_CONNECTION サーバーへの接続を閉じます。 lpvStatusInformation パラメーターが NULL です。
INTERNET_STATUS_CONNECTION_CLOSED サーバーへの接続が正常に閉じられました。 lpvStatusInformation パラメーターが NULL です。
INTERNET_STATUS_HANDLE_CREATED Win32 API 関数 InternetConnect が新しいハンドルを作成したことを示すために使用されます。 これにより、接続に時間がかかりすぎる場合、アプリケーションは別のスレッドから Win32 関数 InternetCloseHandle を呼び出します。 これらの機能の詳細については、Windows SDK を参照してください。
INTERNET_STATUS_HANDLE_CLOSING このハンドル値は正常に終了しました。

状態コールバック ルーチンが実行される前に何らかのアクションを要求するには、このメンバー関数をオーバーライドします。

注意

状態コールバックにはスレッド状態の保護が必要です。 共有ライブラリで MFC を使用している場合は、オーバーライドの先頭に次の行を追加します。

AFX_MANAGE_STATE(AfxGetAppModuleState());

非同期操作の詳細については、 インターネットの最初の手順: WinInet に関する記事を参照してください。

CInternetSession::OpenURL

このメンバー関数を呼び出して、指定した要求を HTTP サーバーに送信し、クライアントが要求と共に送信する追加の RFC822、MIME、または HTTP ヘッダーを指定できるようにします。

CStdioFile* OpenURL(
    LPCTSTR pstrURL,
    DWORD_PTR dwContext = 1,
    DWORD dwFlags = INTERNET_FLAG_TRANSFER_ASCII,
    LPCTSTR pstrHeaders = NULL,
    DWORD dwHeadersLength = 0);

パラメーター

pstrURL
読み取りを開始する URL の名前へのポインター。 で始まる file:ftp:gopher:URL、またはhttp:サポートされている URL のみ。 次の場合pstrURLNULLにアサートします。

dwContext
コールバックで返されたハンドルと共に渡されるアプリケーション定義の値。

dwFlags
この接続の処理方法を説明するフラグ。 有効なフラグの詳細については、「 解説 」を参照してください。 有効なフラグは次のとおりです。

  • INTERNET_FLAG_TRANSFER_ASCII 既定値。 ファイルを ASCII テキストとして転送します。

  • INTERNET_FLAG_TRANSFER_BINARY ファイルをバイナリ ファイルとして転送します。

  • INTERNET_FLAG_RELOAD ローカルにキャッシュされている場合でも、ネットワークからデータを取得します。

  • INTERNET_FLAG_DONT_CACHE データは、ローカルまたは任意のゲートウェイにキャッシュしないでください。

  • INTERNET_FLAG_SECURE このフラグは HTTP 要求にのみ適用されます。 Secure Sockets Layer または PCT を使用して、ネットワーク上のセキュリティで保護されたトランザクションを要求します。

  • INTERNET_OPEN_FLAG_USE_EXISTING_CONNECT 可能であれば、接続要求ごとに新しいセッションを作成するのではなく、生成された新しい要求に対して OpenUrl サーバーへの既存の接続を再利用します。

  • INTERNET_FLAG_PASSIVE FTP サイトに使用されます。 パッシブ FTP セマンティクスを使用します。 でCInternetConnectionOpenURL使用されます。

pstrHeaders
HTTP サーバーに送信されるヘッダーを含む文字列へのポインター。

dwHeadersLength
追加ヘッダーの長さ (文字数)。 この値が-1LNULLpstrHeaders場合は、pstrHeaders0 で終わると見なされ、長さが計算されます。

戻り値

FTP、GOPHER、HTTP、および FILE 型インターネット サービスのみのファイル ハンドルを返します。 解析が NULL 失敗した場合に返します。

返される OpenURL ポインターは、サービスの種類によって pstrURL異なります。 次の表は、返すことができるポインターを OpenURL 示しています。

URL の種類 戻り値
file:// CStdioFile*
http:// CHttpFile*
gopher:// CGopherFile*
ftp:// CInternetFile*

解説

パラメーターdwFlagsには、どちらか一方またはINTERNET_FLAG_TRANSFER_BINARY両方INTERNET_FLAG_TRANSFER_ASCIIを含める必要がありますが、両方を含める必要はありません。 残りのフラグは、ビットごとの "or" (|) 演算子と組み合わせることができます。

OpenURLWin32 関数 InternetOpenURLをラップする場合、インターネット サーバーからのデータのダウンロード、取得、読み取りのみを許可します。 OpenURL では、リモートの場所でファイルを操作できないため、オブジェクトは必要ありません CInternetConnection

ファイルへの書き込みなど、接続固有の (つまりプロトコル固有の) 関数を使用するには、セッションを開き、特定の種類の接続を開き、その接続を使用して目的のモードでファイルを開く必要があります。 接続固有の関数の詳細については、以下を参照してください CInternetConnection

CInternetSession::operator HINTERNET

この演算子を使用して、現在のインターネット セッションの Windows ハンドルを取得します。

operator HINTERNET() const;

CInternetSession::SetCookie

指定した URL の Cookie を設定します。

static BOOL SetCookie(
    LPCTSTR pstrUrl,
    LPCTSTR pstrCookieName,
    LPCTSTR pstrCookieData);

パラメーター

pstrUrl
Cookie を設定する URL を指定する null で終わる文字列へのポインター。

pstrCookieName
Cookie の名前を含む文字列へのポインター。

pstrCookieData
URL に関連付ける実際の文字列データを含む文字列へのポインター。

戻り値

成功した TRUE 場合は返します。それ FALSE 以外の場合は返します。 特定のエラー コードを取得するには、 GetLastError.

解説

このメンバー関数は、Windows SDK で説明されているように、Win32 メッセージ InternetSetCookieの動作を実装します。

CInternetSession::SetOption

インターネット セッションのオプションを設定するには、このメンバー関数を呼び出します。

BOOL SetOption(
    DWORD dwOption,
    LPVOID lpBuffer,
    DWORD dwBufferLength,
    DWORD dwFlags = 0);

BOOL SetOption(
    DWORD dwOption,
    DWORD dwValue,
    DWORD dwFlags = 0);

パラメーター

dwOption
設定するインターネット オプション。 使用可能 なオプション の一覧については、Windows SDK のオプション フラグを参照してください。

lpBuffer
オプション設定を含むバッファー。

dwBufferLength
lpBuffer 長さまたはサイズ dwValue

dwValue
オプション設定を含む A DWORD

dwFlags
さまざまなキャッシュ オプションを示します。 既定値は 0 に設定されています。 指定できる値は次のとおりです。

  • INTERNET_FLAG_DONT_CACHE ローカルまたは任意のゲートウェイ サーバーにデータをキャッシュしないでください。

  • INTERNET_FLAG_OFFLINE ダウンロード操作は、永続キャッシュを介してのみ満たされます。 項目がキャッシュに存在しない場合は、適切なエラー コードが返されます。 このフラグは、ビットごとの "or" (|) 演算子と組み合わせることができます。

戻り値

操作が成功した場合は、値が TRUE 返されます。 エラーが発生した場合は、値が FALSE 返されます。 呼び出しが失敗した場合、Win32 関数 GetLastError が呼び出され、エラーの原因が特定される可能性があります。

関連項目

CObject クラス
階層図
CInternetConnection クラス
CHttpConnection クラス
CFtpConnection クラス
CGopherConnection クラス