특정 형식 형식을 선택하기 위한 대화 상자 생성
사용자가 대화 상자의 제한된 형식 목록에서 형식을 선택할 수 있도록 애플리케이션을 사용할 수 있습니다. 제한은 채널 수, 샘플링 속도, 파형 오디오 형식 태그 또는 샘플당 비트 수를 제한할 수 있습니다. 이러한 모든 경우 acmFormatChoose 함수를 사용하여 ACMFORMATCHOOSE 구조체의 fdwEnum 및 pwfxEnum 멤버를 설정하여 목록을 생성할 수 있습니다. 다음 예제에서는 이 프로세스를 보여 줍니다.
MMRESULT mmr;
ACMFORMATCHOOSE afc;
WAVEFORMATEX wfxSelection;
WAVEFORMATEX wfxEnum;
// Initialize the ACMFORMATCHOOSE members.
memset(&afc, 0, sizeof(afc));
afc.cbStruct = sizeof(afc);
afc.fdwStyle = 0L; // no special style flags
afc.hwndOwner = hwnd; // hwnd of parent window
afc.pwfx = &wfxSelection; // wfx to receive selection
afc.cbwfx = sizeof(wfxSelection);
afc.pszTitle = TEXT("16 Bit PCM Selection");
// Request that all 16-bit PCM formats be displayed for the user
// to select from.
memset(&wfxEnum, 0, sizeof(wfxEnum));
wfxEnum.wFormatTag = WAVE_FORMAT_PCM;
wfxEnum.wBitsPerSample = 16;
afc.fdwEnum = ACM_FORMATENUMF_WFORMATTAG |
ACM_FORMATENUMF_WBITSPERSAMPLE;
afc.pwfxEnum = &wfxEnum;
mmr = acmFormatChoose(&afc);
if ((MMSYSERR_NOERROR != mmr) && (ACMERR_CANCELED != mmr))
{
// There was a fatal error in bringing up the list
// dialog box (probably invalid input parameters).
}