[与此页关联的功能(MCI)是一项旧功能。 它已被 MediaPlayer取代。 MediaPlayer 已针对 Windows 10 和 Windows 11 进行了优化。 Microsoft强烈建议新代码尽可能使用 MediaPlayer 而不是 MCI。 Microsoft建议重写使用旧 API 的现有代码,以尽可能使用新 API。]
在使用 mciSendCommand 函数发送 MCI_PLAY 命令之前,应用程序会为结构分配内存,初始化将使用的成员,并设置与结构中使用的成员对应的标志。 (如果应用程序未为结构成员设置标志,MCI 驱动程序将忽略该成员。例如,以下示例从 dwFrom 指定的起始位置播放电影,到 dwTo指定的结束位置。 (如果任一位置为零,则编写示例以便不使用位置。
DWORD PlayMovie(WORD wDevID, DWORD dwFrom, DWORD dwTo)
{
MCI_DGV_PLAY_PARMS mciPlay; // play parameters
DWORD dwFlags = 0;
// Check dwFrom. If it is != 0 then set parameters and flags.
if (dwFrom){
mciPlay.dwFrom = dwFrom; // set parameter
dwFlags |= MCI_FROM; // set flag to validate member
}
// Check dwTo. If it is != 0 then set parameters and flags.
if (dwTo){
mciPlay.dwTo = dwTo; // set parameter
dwFlags |= MCI_TO; // set flag to validate member
}
// Send the MCI_PLAY command and return the result.
return mciSendCommand(wDevID, MCI_PLAY, dwFlags,
(DWORD)(LPVOID)&mciPlay);
}