Microsoft DirectX 8.0

IAMOpenProgress インターフェイス

ファイル オープン操作の進行状況をレポートする。

ネットワーク越しにファイルをオープンするフィルタはこのインターフェイスを公開することができる。アプリケーションはそれを使ってダウンロードの進行状況を問い合わせることができる。ネットワークのレスポンスが悪いと、IGraphBuilder::RenderFile のようなメソッドは無期限にブロックしてしまうかもしれない。アプリケーションがブロックするのを防ぐために、進行状況をモニターする IAMOpenProgress を使うワーカー スレッドを作成すること。事前に定義されたタイムアウトが起きる、あるいはユーザーからのコマンドに対応して、そのワーカー スレッドは操作を終了する。

URL ファイル ソース フィルタはこのインターフェイスをサポートする。

Vtable 順のメソッド

IUnknown メソッド説明
QueryInterfaceサポートされているインターフェイスへのポインタを取得する。
AddRef参照カウントをインクリメントする。
Release参照カウントをデクリメントする。
IAMOpenProgress メソッド説明
QueryProgressファイル オープン操作の進行状況を取得する。
AbortOperationファイル オープン操作の終了。

IAMOpenProgress::AbortOperation

IAMOpenProgress インターフェイス

ファイル オープン操作の終了。

構文

HRESULT AbortOperation(void);

戻り値

成功なら S_OK を返す、あるいはエラーの原因を示すHRESULT 値を返す。

IAMOpenProgress::QueryProgress

IAMOpenProgress インターフェイス

ファイル オープン操作の進行状況を取得する。

構文

HRESULT QueryProgress(
    LONGLONG *pllTotal,
    LONGLONG *pllCurrent
);

パラメータ

pllTotal
[out] 全ファイルの長さを受け取る変数へのポインタ、バイト単位。
pllCurrent
[out] ファイルのダウンロードした長さを受け取る変数へのポインタ、バイト単位。

戻り値

HRESULT 値を返す。 以下の表に示されるいずれかの値。

S_OK成功。
VFW_S_ESTIMATED戻り値は評価される。
E_UNEXPECTED予期せぬエラー。