IMFHttpDownloadSession::CreateRequest メソッド (mfidl.h)

1 つの HTTP または HTTPS 要求を送信するために使用される IMFHttpDownloadRequest インターフェイスを実装するオブジェクトを作成するために、Microsoft Media Foundation によって呼び出されます。 リソースを完全にダウンロードするには複数の要求が必要な場合があるため、Media Foundation は同じ IMFHttpDownloadSession インスタンスで CreateRequest を複数回呼び出す場合があります。 Media Foundation では、1 つの要求に対してのみ各 IMFHttpDownloadRequest インスタンスが使用されます。

構文

HRESULT CreateRequest(
  [in]           LPCWSTR                szObjectName,
  [in]           BOOL                   fBypassProxyCache,
  [in]           BOOL                   fSecure,
  [in, optional] LPCWSTR                szVerb,
  [in, optional] LPCWSTR                szReferrer,
                 IMFHttpDownloadRequest **ppRequest
);

パラメーター

[in] szObjectName

指定した HTTP 動詞のターゲット リソースの名前を含む文字列へのポインター。 これは通常、ファイル名、実行可能モジュール、または検索指定子です。 ターゲット リソースは常にスラッシュ文字で始まり、URL に含まれていたクエリ文字列が含まれます。

[in] fBypassProxyCache

TRUE に設定されている場合は、プロキシ サーバーからキャッシュされたバージョンのリソースを送信するのではなく、要求を元のサーバーに転送する必要があることを示します。 このフラグが TRUE に設定されている場合は、"Pragma: no-cache" ヘッダーを要求に追加する必要があります。 HTTP/1.1 要求を作成するときは、"Cache-Control: no-cache" も追加する必要があります。

[in] fSecure

TRUE に設定すると、プロトコルのセキュリティで保護されたバリアントが使用されます (該当する場合)。 たとえば、 IMFHttpDownloadSession が HTTP/HTTPS 用の場合、 fSecure を TRUE に設定すると、要求で HTTPS が使用されます。 それ以外の場合は、プロトコルの安全でないバリアント (この例では HTTP) が使用されます。

[in, optional] szVerb

要求で使用する HTTP 動詞を含む文字列へのポインター。 このパラメーターが NULL の場合、関数は HTTP 動詞として GET を使用します。

メモ この文字列はすべて大文字にする必要があります。 多くのサーバーは HTTP 動詞を大文字と小文字を区別して扱います。インターネット エンジニアリング タスク フォース (IETF) のコメント要求 (RFC) では、これらの動詞のスペルは大文字のみを使用します。
 

[in, optional] szReferrer

要求 szObjectName の URL が取得されたドキュメントの URL を指定する文字列へのポインター。 このパラメーターが NULL に設定されている場合、参照ドキュメントは指定されません。

ppRequest

メソッドが正常に戻ると、このパラメーターは IMFHttpDownloadRequest インターフェイスに設定されます。

戻り値

このメソッドは HRESULT を返します。 有効な値を次の表に示しますが、これ以外にもあります。

リターン コード 説明
S_OK
指定された情報が正常に格納されました。
E_OUTOFMEMORY
操作を完了するためのメモリが不足しています。
MF_E_INVALIDREQUEST
メソッドは、Close または SetServer が呼び出される前に呼び出されました。

要件

   
サポートされている最小のクライアント Windows 10バージョン 1703 [デスクトップ アプリのみ]
サポートされている最小のサーバー サポートなし
対象プラットフォーム Windows
ヘッダー mfidl.h
Library Mfplat.lib;Mfplat.dll

関連項目

IMFHttpDownloadSession