void CMFCmusicDlg::OnBnClickedPleyer()
{
// TODO: 在此添加控制元件通知處理程式代碼
if (aa == "")
{
OnBnClickedOpen();
}
else
{
if (m_flag && aa != "")
{
m_flag = false;
MCI_OPEN_PARMS mciopenparms; //打開檔案
MCI_VD_PLAY_PARMS mciplayparms;//播放
/*CString aa;*/
mciopenparms.lpstrElementName = aa; //播放路徑
mciopenparms.lpstrDeviceType = NULL;//檔案型別
//向MCI發送命令訊息讓作業系統進行播放
mciSendCommand(0, MCI_OPEN, MCI_DEVTYPE_WAVEFORM_AUDIO, (DWORD)(LPVOID)&mciopenparms);
m_count = mciopenparms.wDeviceID;//統計設備ID
mciplayparms.dwCallback = (DWORD)GetSafeHwnd();
cdlen = getinfo(MCI_STATUS_LENGTH); //得到歌曲的長度
cdto = MCI_MAKE_HMS(MCI_HMS_HOUR(cdlen), MCI_HMS_MINUTE(cdlen), MCI_HMS_SECOND(cdlen));
mciplayparms.dwFrom = cdfrom;
mciplayparms.dwTo = cdto;
mciSendCommand(m_count, MCI_PLAY, MCI_TO | MCI_FROM, (DWORD)(LPVOID)&mciplayparms);
m_sl.SetRange(0, cdlen);
SetTimer(0, 1000, NULL);
UpdateData(false);
}
else
{
m_flag = true;
KillTimer(0);
DWORD dwsf = getinfo(MCI_STATUS_POSITION);
cdfrom = MCI_MAKE_MSF(MCI_MSF_MINUTE(dwsf), MCI_MSF_SECOND(dwsf), MCI_MSF_FRAME(dwsf));
mciSendCommand(m_count, MCI_CLOSE, 0, NULL);
m_count = 0;
}
}
}
uj5u.com熱心網友回復:
請檢查每個函式呼叫的回傳值。GetLastError
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/99729.html
標籤:界面
上一篇:有關PPT中VBA物件模型的應用
