// MP3の選択:MP3コーデックが使用できない場合(Vista)のチェック void CSettingPubTab::OnRdoMp3() { UpdateData(TRUE); // DDX更新 /// MP3コーデックを選択 CString str = m_aryCodecName.GetAt(m_idxCodecName); str.MakeUpper(); /// MP3フォーマットリストを更新 int intCnt = m_oAcmMgr.GetFormatList(m_aryFormatName, &m_wfx); if (intCnt == 0 && str.Find(ACM_CODEC_MP3) >= 0) { //// FraunHoffer MP3コーデックが使用できない場合(Vista) CAudio *pAudio = CAudio::Instance(); pAudio->MP3CodecRegistry(); } UpdateData(FALSE); // DDX更新 /// 適用ボタンの有効化 OnChgForm(); }
// MP3コーデックの変更→フォーマットリスト更新 void CSettingPubTab::OnCmbCodec() { UpdateData(TRUE); // DDX更新 int i; /// MP3コーデックを選択 CString str = m_aryCodecName.GetAt(m_idxCodecName); str.MakeUpper(); if (str.Find(ACM_CODEC_MP3_LAME) >= 0) { m_oAcmMgr.FindDriver(CAcmMgr::WAV_MP3_LAME, str); } else { m_oAcmMgr.FindDriver(CAcmMgr::WAV_MP3, str); } /// MP3フォーマットリストを更新 int intCnt = m_oAcmMgr.GetFormatList(m_aryFormatName, &m_wfx); if (intCnt == 0 && str.Find(ACM_CODEC_MP3) >= 0) { //// FraunHoffer MP3コーデックが使用できない場合(Vista) CAudio *pAudio = CAudio::Instance(); pAudio->MP3CodecRegistry(); } /// MP3フォーマットコンボボックスを更新 CComboBox *pcmb = (CComboBox*)GetDlgItem(IDC_CMB_FORMAT); pcmb->ResetContent(); for(i = 0; i < intCnt; i++) { pcmb->AddString(m_aryFormatName.GetAt(i)); } /// MP3フォーマットコンボボックスを選択 m_idxFormatName = 0; UpdateData(FALSE); // DDX更新 /// 適用ボタンの有効化 OnChgForm(); }