如何用MCI获得歌曲长度

时间:2013-09-18 17:46:59

标签: c# .net winforms mci

尝试查找歌曲持续时间,如HH:MM:SS,以便在我的节目中显示。

尝试使用

[DllImport("winmm.dll")]
    private static extern long mciSendString(string strCommand,
        StringBuilder strReturn, int iReturnLength, IntPtr hwndCallback);

public int CurrentTime()
    {
        MPlayerCommand = "status MediaFile length track number";
        error = mciSendString(MPlayerCommand, returnData, 128, IntPtr.Zero);
        return Convert.ToInt32(returnData.ToString());
    }

但结果得到错误 - “输入字符串不正确”

用于理解this。据我所知,获取歌曲长度需要使用命令status MediaFile length track number,其中status - 主命令MediaFile - 告诉使用当前打开的MediaFile,length track number - 请求的参数。仅在打开文件后使用此方法。

1 个答案:

答案 0 :(得分:0)

我知道这是一个老问题,但我认为您误读了文档,length track number意味着被length track 1length track 2替换为...... {{1}是实际的轨道#:)