次の方法で共有


IDiscRecorder2Ex::GetByteAlignmentMask メソッド (imapi2.h)

デバイスのバイトアラインメント マスクを取得します。

構文

HRESULT GetByteAlignmentMask(
  [out] ULONG *value
);

パラメーター

[out] value

バッファーがデバイスの正しいバイト境界にアラインされているかどうかを判断するために使用するバイトアラインメント マスク。 バイトアラインメント値は、常に 2 の累乗である数値です。

戻り値

S_OKは成功時に返されますが、実装の結果として他の成功コードが返される場合があります。 次のエラー コードは通常、操作の失敗時に返されますが、考えられる唯一のエラー値を表すわけではありません。

リターン コード 説明
E_POINTER
ポインターが無効です。

値: 0x80004003

E_FAIL
不特定のエラー。

値: 0x80004005

解説

IDiscRecorder2Ex::SendCommandSendDataToDevice および IDiscRecorder2Ex::SendCommandGetDataFromDevice のデータ バッファーは、正しいバイト境界に揃える必要があります。 バッファーが正しいバイト境界にあるかどうかを判断するには、データ バッファーのアドレスを使用してビットマスクのビットごとの論理 AND を実行します。 たとえば、バッファーのアドレスが0x3840958されている場合は、次のステートメントを使用して正しい配置をテストできます。

if (0x3840958 & (value - 1) == 0)
{
    // The alignment is correct
}

要件

   
サポートされている最小のクライアント Windows Vista、WINDOWS XP と SP2 [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2003 (デスクトップ アプリのみ)
対象プラットフォーム Windows
ヘッダー imapi2.h

関連項目

IDiscRecorder2Ex

IDiscRecorder2Ex::SendCommandGetDataFromDevice

IDiscRecorder2Ex::SendCommandNoData

IDiscRecorder2Ex::SendCommandSendDataToDevice