次の方法で共有


IWMDMDeviceControl::Seek メソッド (mswmdm.h)

Seek メソッドは、Play メソッドまたは Record メソッドの開始点として使用される位置をシークします。

構文

HRESULT Seek(
  [in] UINT fuMode,
  [in] int  nOffset
);

パラメーター

[in] fuMode

実行されているシーク操作のモード。 fuMode パラメーターは、次のいずれかのモードである必要があります。

モード 説明
WMDM_SEEK_BEGIN ファイルの先頭の後の nOffset 単位の位置をシークします。
WMDM_SEEK_CURRENT 現在の位置から nOffset 単位の位置をシークします。
WMDM_SEEK_END ファイルの末尾の前に nOffset 単位の位置をシークします。
WMDM_SEEK_REMOTECONTROL リムーバブル コントロールをシークします。
WMDM_SEEK_STREAMINGAUDIO ストリーミング オーディオをシークします。

[in] nOffset

シーク操作によって開始位置が fuMode で指定された原点から離れる単位数。 nOffset の単位は、コンテンツによって定義されます。 音楽の場合はミリ秒、電子書籍の場合はページ数などです。

nOffset の正の値は、ファイルを前方にシークすることを示します。 負の値は、ファイルを後方にシークすることを示します。 nOffsetfuMode の組み合わせは、ファイルの先頭の前またはファイルの末尾の後の位置をシークすることを示し、メソッドがE_INVALIDARGを返します。

戻り値

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

リターン コード 説明
S_OK
メソッドが成功しました。
E_INVALIDARG
1 つ以上のパラメーターが無効です。
WMDM_E_NOTSUPPORTED
Seek はこのデバイスに実装されていません。
E_FAIL
未指定のエラーが発生しました。

解説

シーク位置は、デバイスのストレージ メディア上の場所を指す IWMDMStorage インターフェイス、またはストリーミング オーディオをサポートするために実装された IWMDMOperation インターフェイスを渡すことによって定義されます。 IWMDMObjectInfo インターフェイスを渡して、指定したインターフェイスが指すオブジェクト内のポイントを記述することもできます。

デバイスの再生では、再生前に Seek が呼び出されない場合は、メディア デバイス上の最初のストレージ メディアの最初のオーディオ トラックから再生が開始されます。

デバイスの記録の場合、Record の前に Seek が呼び出されない場合、レコード操作は失敗します。 Seek 呼び出しから戻った後に IWMDMObjectInfo::SetPlayLength メソッドを呼び出すことで、記録の長さを制限できます。

必要条件

   
対象プラットフォーム Windows
ヘッダー mswmdm.h
Library Mssachlp.lib

関連項目

IWMDMDeviceControl インターフェイス

IWMDMObjectInfo インターフェイス

IWMDMOperation インターフェイス

IWMDMStorage インターフェイス