관리 메뉴

ㄴrㅎnㅂrㄹrㄱi

MM_MCINOTIFY 본문

API 관련/Win32 API 함수

MM_MCINOTIFY

님투 2007. 11. 9. 01:20
반응형

MM_MCINOTIFY

MM_MCINOTIFY 메세지는,MCI디바이스가 작업을 완료한 것을 통지하기 위해서 윈도우에 송신됩니다.

윈도우는, 윈도우 프로시저를 개입시켜 이 메세지를 받아들입니다.

#define  MM_MCINOTIFY    0x03B9

wFlags = wParam;           // 키 플랙
lDevID = lParam;           // 커서x좌표

파라미터

wFlags

wParam 파라미터의 값.

통지 메세지가 발생한 이유를 나타내는 값이 지정됩니다.이하의 값의 어느 쪽인가에 됩니다.

의미
0x0001 (MCI_NOTIFY_SUCCESSFUL)

콜백 함수를 일으키는 조건이 채워진 것을 나타내 보입니다.

0x0002 (MCI_NOTIFY_SUPERSEDED)

“notify”플래그가 지정된 다른 커멘드를 디바이스가 받아, 콜백 함수를 개시하는데 필요한 조건이 변경된 것을 나타내 보입니다.

0x0004 (MCI_NOTIFY_ABORTED)

콜백 함수를 개시하는 조건이 채워지지 않게 하는 커멘드를 디바이스가 받은 것을 나타내 보입니다.새로운 커멘드가 현재의 커멘드를 중단하고, 한층 더 통지를 요구하는 경우에는, 디바이스는 MCI_NOTIFY_SUPERSEDED (은)는 아니고 이 통지를 보냅니다.

0x0008 (MCI_NOTIFY_FAILURE)

디바이스가 커멘드를 실행하고 있는 한중간에 디바이스 에러가 발생한 것을 나타내 보입니다.

lDevID

lParam 파라미터의 값.

콜백을 일으킨 디바이스의 식별자가 격납됩니다.

반환값

어플리케이션이 이 메세지를 처리했을 경우는 0 (을)를 돌려줍니다.

해설

커멘드의 실행이 완료하면, 디바이스는 MCI_NOTIFY_SUCCESSFUL 플래그를 돌려줍니다.예를 들면,CD오디오 디바이스는, 재생 종료시에, play 커멘드에 대해서의 통지로서 MCI_NOTIFY_SUCCESSFUL (을)를 사용합니다. play 커멘드는, 지정된 종료 위치에 도달할까 미디어의 말미에 도달했을 경우에게만, MCI_NOTIFY_SUCCESSFUL (을)를 통지합니다.같이 seekrecord 커멘드도, 지정된 종료 위치나 미디어의 말미에 도달할 때까지 MCI_NOTIFY_SUCCESSFUL (을)를 돌려주지 않습니다.

디바이스가 통지 조건이 채워지지 않게 하는 커멘드를 받았을 경우에게만, 디바이스는 MCI_NOTIFY_ABORTED 플래그를 돌려줍니다.예를 들면, play 커멘드는, 그것이 재생 방향이나 종료 위치를 변경하지 않는다면, 이전의 play 커멘드에 의한 통지는 중지되지 않습니다. seekrecord 커멘드도 같습니다.또, pause 커멘드에 의해서 재생이나 녹음이 중단되었을 경우도 MCI_NOTIFY_ABORTED 통지는 보내지지 않습니다. resume 커멘드를 송신하는 것에 의해서, 콜백 통지 조건의 설정을 계속시킬 수 있습니다.

커멘드에 의한 통지를 요구하는 경우에는, mciSendCommand 함수나 mciSendString 함수가 돌려주는 에러 코드를 체크하지 않으면 안됩니다.함수가 에러를 돌려주고 있는 경우에는, 커멘드로의 통지는 설정되어 있지 않습니다.

대응 정보

Windows 95 이후 / Windows NT 3.1 이후

반응형

'API 관련 > Win32 API 함수' 카테고리의 다른 글

info  (0) 2007.11.09
close  (0) 2007.11.09
capability  (0) 2007.11.09
MCI커멘드 문자열 일람  (0) 2007.11.09
MIDIOUTCAPS  (0) 2007.11.09
Comments