0

我有一个项目,要求使用播放列表打开 Windows 媒体播放器。播放列表是根据选定的文件构建的。

从我找到的文档来看,打开 WMP 实例似乎很容易。但是我不确定如何构建播放列表或在 WMP 启动时将其插入。有什么想法吗 ?

#include "atlbase.h"
#include "atlwin.h"
#include "wmp.h"

int _tmain(int argc, _TCHAR* argv[])
{
    CoInitialize(NULL);

    HRESULT hr = S_OK;
    CComBSTR bstrVersionInfo; // Contains the version string.
    CComPtr<IWMPPlayer> spPlayer;  // Smart pointer to IWMPPlayer interface.

    hr = spPlayer.CoCreateInstance( __uuidof(WindowsMediaPlayer), 0, CLSCTX_INPROC_SERVER );

    if(SUCCEEDED(hr))
    {
        hr = spPlayer->get_versionInfo(&bstrVersionInfo);
    }

    if(SUCCEEDED(hr))
    {
        // Show the version in a message box.
        COLE2T pStr(bstrVersionInfo);
        MessageBox( NULL, (LPCSTR)pStr, _T("Windows Media Player Version"), MB_OK );
    }

    // Clean up.
    spPlayer.Release();
    CoUninitialize();

    return 0;
}
4

1 回答 1

1

http://msdn.microsoft.com/en-us/library/windows/desktop/dd562624(v=vs.85).aspx

在它列出的页面的中途:

/Playlist PlaylistName

打开播放器并播放指定的播放列表。

启动程序QProcess并指定参数。

http://qt-project.org/doc/qt-4.8/qprocess.html

希望有帮助。

编辑:如果您仍想使用 WMP API,您可以查看:

http://msdn.microsoft.com/en-us/library/windows/desktop/dd563405(v=vs.85).aspx

http://msdn.microsoft.com/en-us/library/windows/desktop/dd563242(v=vs.85).aspx

http://msdn.microsoft.com/en-us/library/windows/desktop/dd563547(v=vs.85).aspx

于 2013-07-02T00:02:14.783 回答