次の方法で共有


midiOutShortMsg 関数 (mmeapi.h)

midiOutShortMsg 関数は、指定された MIDI 出力デバイスに短い MIDI メッセージを送信します。

構文

MMRESULT midiOutShortMsg(
  HMIDIOUT hmo,
  DWORD    dwMsg
);

パラメーター

hmo

MIDI 出力デバイスへのハンドル。 このパラメーターは、 HMIDIOUT にキャストされた MIDI ストリームのハンドルにすることもできます。

dwMsg

MIDI メッセージ。 メッセージは DWORD 値にパックされ、メッセージの最初のバイトは下位バイトになります。 メッセージは、次のようにこのパラメーターにパックされます。

Word Byte 使用
高次 使用されていません。
下位順 MIDI データの 2 番目のバイト (必要な場合)。
高次 MIDI データの最初のバイト (必要な場合)。
下位順 MIDI ステータス。
 

MIDI ステータス バイトに応じて、2 つの MIDI データ バイトは省略可能です。 一連のメッセージの状態バイトが同じである場合は、一連の最初のメッセージの後のメッセージから状態バイトを省略して、実行中の状態を作成できます。 次のように、実行中の状態のメッセージをパックします。

Word Byte 使用
高次 使用されていません。
下位順 使用されていません。
高次 MIDI データの 2 番目のバイト (必要な場合)。
下位順 MIDI データの最初のバイト。

戻り値

成功した場合はMMSYSERR_NOERRORを返し、それ以外の場合はエラーを返します。 考えられるエラー値は次のとおりです。

リターン コード 説明
MIDIERR_BADOPENMODE
アプリケーションは、ステータス バイトのないメッセージをストリーム ハンドルに送信しました。
MIDIERR_NOTREADY
ハードウェアは他のデータでビジー状態です。
MMSYSERR_INVALHANDLE
指定されたデバイス ハンドルが無効です。

注釈

この機能は、システム排他メッセージまたはストリーム・メッセージを除くすべての MIDI メッセージを送信するために使用されます。

この関数は、メッセージが出力デバイスに送信されるまで戻らない場合があります。 ストリームが同じデバイスで再生されている間に短いメッセージを送信できます (ただし、この場合は実行中の状態を使用できません)。

要件

要件
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー mmeapi.h (Windows.h を含む)
Library Winmm.lib
[DLL] Winmm.dll

こちらもご覧ください

MIDI 関数