midiStreamOpen 함수(mmeapi.h)
midiStreamOpen 함수는 출력을 위해 MIDI 스트림을 엽니다. 기본적으로 디바이스는 일시 중지 모드로 열립니다. 이 함수에서 검색한 스트림 핸들은 스트림에 대한 모든 후속 참조에서 사용해야 합니다.
구문
MMRESULT midiStreamOpen(
LPHMIDISTRM phms,
LPUINT puDeviceID,
DWORD cMidi,
DWORD_PTR dwCallback,
DWORD_PTR dwInstance,
DWORD fdwOpen
);
매개 변수
phms
함수가 반환할 때 스트림 핸들을 포함할 변수에 대한 포인터입니다.
puDeviceID
디바이스 식별자에 대한 포인터입니다. 스트림을 대신하여 디바이스가 열리고 스트림이 닫혔을 때 다시 닫힙니다.
cMidi
예약; 는 1이어야 합니다.
dwCallback
재생 진행률과 관련된 메시지를 처리하기 위해 MIDI 재생 중에 호출된 창 또는 스레드의 콜백 함수, 이벤트 핸들, 스레드 식별자 또는 핸들에 대한 포인터입니다. 콜백 메커니즘이 필요한 경우 이 매개 변수에 대해 NULL 을 지정합니다.
dwInstance
애플리케이션별 instance 모든 콜백 함수를 사용하여 애플리케이션에 반환되는 데이터입니다.
fdwOpen
디바이스를 열기 위한 콜백 플래그입니다. 다음 콜백 플래그 중 하나를 지정해야 합니다.
값 | 의미 |
---|---|
CALLBACK_EVENT | dwCallback 매개 변수는 이벤트 핸들입니다. 이 콜백 메커니즘은 출력 전용입니다. |
CALLBACK_FUNCTION | dwCallback 매개 변수는 콜백 프로시저 주소입니다. 콜백 서명은 MidiOutProc을 참조하세요. |
CALLBACK_NULL | 콜백 메커니즘이 없습니다. 이 값은 기본 설정입니다. |
CALLBACK_THREAD | dwCallback 매개 변수는 스레드 식별자입니다. |
CALLBACK_WINDOW | dwCallback 매개 변수는 창 핸들입니다. |
반환 값
성공하면 MMSYSERR_NOERROR 반환하고, 그렇지 않으면 오류를 반환합니다. 가능한 오류 값은 다음과 같습니다.
반환 코드 | 설명 |
---|---|
|
지정된 디바이스 식별자가 범위를 벗어났습니다. |
|
지정된 핸들 또는 플래그 매개 변수가 잘못되었습니다. |
|
시스템에서 메모리를 할당하거나 잠글 수 없습니다. |
요구 사항
지원되는 최소 클라이언트 | Windows 2000 Professional[데스크톱 앱만] |
지원되는 최소 서버 | Windows 2000 Server[데스크톱 앱만] |
대상 플랫폼 | Windows |
헤더 | mmeapi.h(Windows.h 포함) |
라이브러리 | Winmm.lib |
DLL | Winmm.dll |