【问题标题】:How can I play DVD files using wmp.dll?如何使用 wmp.dll 播放 DVD 文件?
【发布时间】:2011-02-01 08:50:06
【问题描述】:

我的 VB6 应用程序需要帮助。我有一个引用wmp.dll(Windows Media Player 9 OCX)的表格。我可以播放许多文件扩展名,如 MPG、MPEG、AVI、QT 等,但我想播放 DVD 文件。我正在使用以下代码:。

wmp.url = "D:\VIDEO_TS\VTS_01_0.VOB"

此命令适用于所有文件,但 DVD 文件除外。

我也尝试过使用:

commondialog1.showopen
wmp1.url=commondialog1.filename
wmp1.controls.play

这不起作用。

唯一有效的功能是:

wmp1.showplayer(url as string)

但这会显示媒体播放器对象,并播放文件。我想以我的形式而不是在媒体播放器中观看电影。

有什么想法吗?

【问题讨论】:

  • @Ramses1974:欢迎来到 Stack Overflow。我做了一些编辑,试图让你的帖子更具可读性。我不认为我改变了任何意义。如果我这样做了,请随时将其更改回来。希望对此有更多了解的人能够帮助您。祝你好运!

标签: vb6 windows-media-player wmp dvd


【解决方案1】:

您是否尝试过这样访问 DVD:

dvd://E:\

E:\ 是您计算机上的 DVD 驱动器吗?

【讨论】:

    【解决方案2】:

    Windows Media Player SDK。特别值得关注DVD Object

    【讨论】:

      【解决方案3】:

      这是我最终在 Delphi 中的做法,假设 DVD 是驱动器 D:

      wmp1.URL := 'wmpdvd://D';
      

      这是您探索 DVD 播放列表 URL 的方式

      procedure TForm1.ExploreDVD;
      var
        i, j : Integer;
        cd: IWMPCdrom;
        pl: IWMPPlaylist;
      begin
        for i := 0 to wmp1.cdromCollection.Count - 1 do
        begin
          cd := wmp1.cdromCollection.Item(i);
          pl := cd.Playlist;
      
          WriteLn( cd.driveSpecifier );
          WriteLn( pl.Name );
          for j := 0 to pl.count-1 do
            WriteLn(pl.Item[j].sourceURL);
        end;
      end;
      

      希望这有助于其他人寻找答案。

      【讨论】:

        猜你喜欢
        • 2011-04-14
        • 2011-03-08
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-10-26
        • 2010-12-11
        • 2011-06-04
        • 1970-01-01
        相关资源
        最近更新 更多