MIDIHDR 结构 (mmeapi.h)

MIDIHDR 结构定义用于标识 MIDI 系统独占缓冲区或流缓冲区的标头。

语法

typedef struct midihdr_tag {
  LPSTR              lpData;
  DWORD              dwBufferLength;
  DWORD              dwBytesRecorded;
  DWORD_PTR          dwUser;
  DWORD              dwFlags;
  struct midihdr_tag *lpNext;
  DWORD_PTR          reserved;
  DWORD              dwOffset;
  DWORD_PTR          dwReserved[8];
} MIDIHDR, *PMIDIHDR, *NPMIDIHDR, *LPMIDIHDR;

成员

lpData

指向 MIDI 数据的指针。

dwBufferLength

缓冲区的大小。

dwBytesRecorded

缓冲区中的实际数据量。 此值应小于或等于 dwBufferLength 成员中给定的值。

dwUser

自定义用户数据。

dwFlags

提供有关缓冲区信息的标志。

名称 说明
MHDR_DONE
由设备驱动程序设置以指示它已完成缓冲区并将其返回到应用程序。
MHDR_INQUEUE
由 Windows 设置以指示缓冲区已排队等待播放。
MHDR_ISSTRM
设置为指示缓冲区是流缓冲区。
MHDR_PREPARED
由 Windows 设置以指示已使用 midiInPrepareHeadermidiOutPrepareHeader 函数准备缓冲区。

lpNext

保留值;请勿使用。

reserved

保留值;请勿使用。

dwOffset

执行回调时偏移到缓冲区。 (生成此回调是因为MEVT_F_CALLBACK标志是在 MIDIEVENT 结构的 dwEvent 成员中设置的。) 此偏移使应用程序能够确定导致回调的事件。

dwReserved[8]

保留值;请勿使用。

要求

要求
最低受支持的客户端 Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器 Windows 2000 Server [仅限桌面应用]
标头 mmeapi.h (包括 Windows.h)

另请参阅

MIDI 结构

MIDIEVENT

乐器数字接口 (MIDI)

midiInPrepareHeader

midiOutPrepareHeader