次の方法で共有


IMFSourceResolver::BeginCreateObjectFromURL メソッド (mfidl.h)

URL からメディア ソースまたはバイト ストリームを作成するための非同期要求を開始します。

構文

HRESULT BeginCreateObjectFromURL(
  [in]  LPCWSTR          pwszURL,
  [in]  DWORD            dwFlags,
  [in]  IPropertyStore   *pProps,
  [out] IUnknown         **ppIUnknownCancelCookie,
  [in]  IMFAsyncCallback *pCallback,
  [in]  IUnknown         *punkState
);

パラメーター

[in] pwszURL

解決する URL を含む Null で終わる文字列。

[in] dwFlags

フラグのビットごとの OR。 「ソース リゾルバー フラグ」を参照してください。

[in] pProps

プロパティ ストアの IPropertyStore インターフェイスへのポインター。 メソッドは、プロパティ ストアを、オブジェクトを作成するスキーム ハンドラーまたはバイト ストリーム ハンドラーに渡します。 ハンドラーは、プロパティ ストアを使用して オブジェクトを構成できます。 このパラメーターは、NULL でもかまいません。 詳細については、「 メディア ソースの構成」を参照してください。

[out] ppIUnknownCancelCookie

IUnknown ポインターまたは値 NULL を受け取ります。 値が NULL でない場合は、このポインターを IMFSourceResolver::CancelObjectCreation メソッドに渡すことで、非同期操作を取り消すことができます。 呼び出し元はインターフェイスを解放する必要があります。 このパラメーターは、NULL でもかまいません。

[in] pCallback

コールバック オブジェクトの IMFAsyncCallback インターフェイスへのポインター。 呼び出し元は、このインターフェイスを実装する必要があります。

[in] punkState

呼び出し元によって定義された状態オブジェクトの IUnknown インターフェイスへのポインター。 このパラメーターは、NULL でもかまいません。 このオブジェクトを使用して、状態情報を保持できます。 コールバックが呼び出されると、オブジェクトが呼び出し元に返されます。

戻り値

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

リターン コード 説明
S_OK
メソッドが成功しました。
MF_E_SOURCERESOLVER_MUTUALLY_EXCLUSIVE_FLAGS
dwFlags パラメーターには、相互に排他的なフラグが含まれています。
MF_E_UNSUPPORTED_SCHEME
URL スキームはサポートされていません。

解説

dwFlags パラメーターには、MF_RESOLUTION_MEDIASOURCE フラグまたは MF_RESOLUTION_BYTESTREAM フラグのいずれかを含める必要がありますが、両方を含めてはなりません。

ローカル ファイルの場合は、 pwszURL パラメーターでファイル名を渡すことができます。スキーム file: は必要ありません。

操作が完了すると、ソース リゾルバーは IMFAsyncCallback::Invoke メソッドを呼び出します。 Invoke メソッドは、作成されたオブジェクトへのポインターを取得するために、IMFSourceResolver::EndCreateObjectFromURL を呼び出す必要があります。

pProps パラメーターの使用方法は、メディア ソースの実装によって異なります。

要件

   
サポートされている最小のクライアント Windows Vista [デスクトップ アプリのみ | UWP アプリ]
サポートされている最小のサーバー Windows Server 2008 [デスクトップ アプリ | UWP アプリ]
対象プラットフォーム Windows
ヘッダー mfidl.h
Library Mfuuid.lib

関連項目

IMFSourceResolver

ソース リゾルバー