IDvdInfo2::GetCurrentUOPS
GetCurrentUOPS メソッドは、コンテンツの作成者が明示的に無効にしたナビゲーション コマンドが現在のディスク位置にあれば、それを示すフラグのセットを取得する。
構文
HRESULT GetCurrentUOPS(
ULONG *pulUOPs
);
パラメータ
pulUOPs
[out] VALID_UOP_FLAG 値のビットごとの OR である ULONG 型の変数へのポインタ。個々のビットは、ユーザ操作 (UOP) の状態 (有効または無効) を示す。ビットが設定されていれば、ユーザ操作は禁止されている。「注意」を参照。
戻り値
次のいずれかの HRESULT 値を返す。
戻りコード | 説明 |
S_OK | 成功。 |
E_POINTER | pulUOPs が有効なポインタではない。 |
注意
DVD の作成者は、ディスク上のほとんどすべての位置で、UOP コマンドを挿入することにより、通常は現在の DVD ドメイン内で許可されているナビゲーション コマンドを禁止できる。つまり、UOP コマンドを利用すると、ディスクの作成者は、通常のナビゲーション権限をオーバーライドできる。
DVD ナビゲータは、コマンドを処理する前に自動的にすべての UOP 権限をチェックし、コマンドが現在の UOP によって無効になっていれば、どのメソッドからでも VFW_E_DVD_OPERATION_INHIBITED を返すため、通常は DVD プレーヤ アプリケーショがこのメソッドを使う必要はない。アプリケーションで現在の UOP 権限そのものを追跡する必要がある場合は、現在の UOP 権限が必要になるたびに GetCurrentUOPS を呼び出すか、または、メッセージ ループで EC_DVD_VALID_UOPS_CHANGE イベント通知を処理し、lParam1 引数から UOP 情報を取得できる。一般的に、後者の方式の方が効率がよい。
参照