다음을 통해 공유


midiInPrepareHeader 함수(mmeapi.h)

midiInPrepareHeader 함수는 MIDI 입력을 위한 버퍼를 준비합니다.

구문

MMRESULT midiInPrepareHeader(
  HMIDIIN   hmi,
  LPMIDIHDR pmh,
  UINT      cbmh
);

매개 변수

hmi

MIDI 입력 디바이스에 대한 핸들입니다. 디바이스 핸들을 얻으려면 midiInOpen을 호출합니다.

pmh

준비할 버퍼를 식별하는 MIDIHDR 구조체에 대한 포인터입니다.

함수를 호출하기 전에 MIDIHDR 구조체의 lpData, dwBufferLengthdwFlags 멤버를 설정합니다. dwFlags 멤버는 0으로 설정해야 합니다.

cbmh

MIDIHDR 구조체의 크기(바이트)입니다.

반환 값

성공하거나 오류가 있으면 MMSYSERR_NOERROR 반환합니다. 가능한 오류 값은 다음과 같습니다.

반환 코드 설명
MMSYSERR_INVALHANDLE
지정된 디바이스 핸들이 잘못되었습니다.
MMSYSERR_INVALPARAM
지정한 주소가 잘못되었습니다.
MMSYSERR_NOMEM
시스템에서 메모리를 할당하거나 잠글 수 없습니다.

설명

MIDI 데이터 블록을 디바이스 드라이버에 전달하기 전에 midiInPrepareHeader 함수에 전달하여 버퍼를 준비해야 합니다. 헤더가 준비되면 버퍼를 수정하지 마세요. 버퍼를 사용하여 드라이버를 완료한 후 midiInUnprepareHeader 함수를 호출합니다.

애플리케이션은 동일한 버퍼를 다시 사용하거나 여러 버퍼를 할당하고 각 버퍼에 대해 midiInPrepareHeader 를 호출할 수 있습니다. 동일한 버퍼를 다시 사용하는 경우 매번 버퍼를 준비할 필요가 없습니다. 처음에 midiInPrepareHeader를 한 번 호출한 다음, 끝에 midiInUnprepareHeader를 한 번 호출할 수 있습니다.

이미 준비된 헤더를 준비하는 것은 효과가 없으며 함수는 0을 반환합니다.

요구 사항

   
지원되는 최소 클라이언트 Windows 2000 Professional[데스크톱 앱만]
지원되는 최소 서버 Windows 2000 Server[데스크톱 앱만]
대상 플랫폼 Windows
헤더 mmeapi.h(Windows.h 포함)
라이브러리 Winmm.lib
DLL Winmm.dll

참고 항목

MIDI 데이터 블록 할당 및 준비

MIDI 함수

midiInUnprepareHeader