Доброго времени суток. В файле справки по применению mmsystem сказано, что, если в макрокоманде MCI_MAKE_TMSF все параметры, кроме первого, будут содержать нулевые значения, проигрывание будет запущено с самого начала дорожки. Первый же параметр определяет номер дорожки. Тогда почему у меня не работает проигрывание с самого начала дорожки: MCI_MAKE_TMSF(Номер_дорожки,0,0,0);| Код | var hWnd: THandle; MCIOpen: TMCI_OPEN_PARMS; MCIPlay: TMCI_PLAY_PARMS; dwID: DWORD; ... procedure Play(hwnd: THandle; Track: UINT); begin MCIOpen.lpstrDeviceType := 'CDAudio'; mciSendCommand(0, MCI_OPEN, MCI_OPEN_TYPE, Longint(@MCIOpen)); Device := MCIOpen.wDeviceID; MCIPlay.dwCallback:= hwnd; MCIPlay.dwFrom:= MCI_MAKE_TMSF(Track,0,0,0); dwrc:= mciSendCommand(Device, MCI_PLAY, MCI_FROM or MCI_NOTIFY, Longint(@MCIPlay)); if dwrc<>0 then begin // showmessage('ERROR PLAY'); exit; end; end;
//Применение: //Проигрываем первую дорожку Play(hwnd,1); | P.S. Если кто-нибудь знает как организовать переход к следующему треку с помощью mciSendCommand, пожалуйста, поделитесь кодом.
|