MCI 함수 매크로 및 메시지
[이 페이지 MCI와 연결된 기능은 레거시 기능입니다. MediaPlayer로 대체되었습니다. MediaPlayer는 Windows 10 및 Windows 11 최적화되었습니다. 가능한 경우 새 코드에서 MCI 대신 MediaPlayer를 사용하는 것이 좋습니다. 가능한 경우 레거시 API를 사용하는 기존 코드를 다시 작성하여 새 API를 사용하도록 제안합니다.]
대부분의 MCI 애플리케이션은 mciSendString 및 mciSendCommand 함수를 수십 번 사용합니다. MCI는 애플리케이션에서 덜 자주 사용하는 몇 가지 유용한 기능을 제공합니다.
대부분의 MCI 명령에 필요한 디바이스 식별자는 일반적으로 열기 (MCI_OPEN) 명령을 호출하여 검색됩니다. 디바이스 식별자가 필요하지만 디바이스를 열지 않으려는 경우(예: 다른 작업을 수행하기 전에 디바이스의 기능을 쿼리하려는 경우) mciGetDeviceID 함수를 호출할 수 있습니다.
mciGetCreatorTask 함수를 사용하면 애플리케이션이 디바이스 식별자를 사용하여 해당 식별자를 만든 작업에 대한 핸들을 검색할 수 있습니다.
mciGetYieldProc 및 mciSetYieldProc 함수를 사용하여 "wait"(MCI_WAIT) 플래그와 연결된 콜백 함수의 주소를 할당하고 검색할 수 있습니다.
mciGetErrorString 함수는 MCI 오류 값을 설명하는 문자열을 검색합니다. MCI가 반환하는 각 문자열(데이터 또는 오류 설명)은 최대 128자입니다. 128자보다 작은 대화 상자 필드는 MCI에서 반환하는 긴 문자열을 자립니다. 이러한 문자열에 대한 자세한 내용은 MCIERR 반환 값을 참조하세요.
MCI 매크로는 시간 형식을 지정하는 값을 만들고 디스어셈블하는 데 사용할 수 있는 도구입니다. 이러한 시간 형식은 많은 MCI 명령에 사용됩니다. 매크로에서 작동하는 형식은 HMS(시간/분/초), MSF(분/초/프레임) 및 트랙/분/초/프레임(TMSF)입니다. 다음 표에는 매크로 및 해당 설명이 나와 있습니다.
매크로 | 설명 |
---|---|
MCI_HMS_HOUR | HMS 값에서 시간 구성 요소를 검색합니다. |
MCI_HMS_MINUTE | HMS 값에서 분 구성 요소를 검색합니다. |
MCI_HMS_SECOND | HMS 값에서 초 구성 요소를 검색합니다. |
MCI_MAKE_HMS | HMS 값을 만듭니다. |
MCI_MAKE_MSF | MSF 값을 만듭니다. |
MCI_MAKE_TMSF | TMSF 값을 만듭니다. |
MCI_MSF_FRAME | MSF 값에서 프레임 구성 요소를 검색합니다. |
MCI_MSF_MINUTE | MSF 값에서 분 구성 요소를 검색합니다. |
MCI_MSF_SECOND | MSF 값에서 초 구성 요소를 검색합니다. |
MCI_TMSF_FRAME | TMSF 값에서 프레임 구성 요소를 검색합니다. |
MCI_TMSF_MINUTE | TMSF 값에서 분 구성 요소를 검색합니다. |
MCI_TMSF_SECOND | TMSF 값에서 초 구성 요소를 검색합니다. |
MCI_TMSF_TRACK | TMSF 값에서 트랙 구성 요소를 검색합니다. |
MCI는 또한 MM_MCINOTIFY 및 MM_MCISIGNAL 두 개의 메시지를 제공합니다. MM_MCINOTIFY 메시지는 해당 명령이 "알림"(MCI_NOTIFY) 플래그를 지정할 때마다 MCI 명령의 결과를 애플리케이션에 알립니다. MM_MCISIGNAL 메시지는 디지털 비디오 디바이스와 관련이 있습니다. 지정된 위치에 도달하면 애플리케이션에 알 수 있습니다.