通过c#控制VLC

Dan*_*ews 5 c# vlc

我正在编写一个应用程序,它将打开vlc,将文件添加到其播放列表中,然后播放它.我在最后2个问题上遇到了一些问题.

 AXVLC.VLCPlugin alxplugin1 = new AXVLC.VLCPlugin();

                alxplugin1.addTarget("C:\\test.avi", null, AXVLC.VLCPlaylistMode.VLCPlayListInsert, 0);
                alxplugin1.play();
Run Code Online (Sandbox Code Playgroud)

这不起作用......有什么想法吗?

谢谢

Dan*_*sha 2

C# 可以通过 VLC 的 COM 层访问 VLC。首先要做的是注册 axvlc.dll。打开 cmd 窗口并输入:

C:\Windows\System32\regsvr32.exe C:\Program Files (x86)\VideoLAN\VLC\axvlc.dll
Run Code Online (Sandbox Code Playgroud)

您应该会收到一个对话框,确认您的 dll 已成功注册。打开 VisualStudio 并创建一个新的 WinForms 项目并添加对 COM VLC COM 对象的引用。转到表单 cs 文件

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
          public Form1()
          {
               InitializeComponent();

               AXVLC.VLCPlugin2Class p = new AXVLC.VLCPlugin2Class();
               p.addTarget("C:\\zk.m4a", null, VLCPlaylistMode.VLCPlayListInsert, 0);
               p.play();
           }
     }
 }
Run Code Online (Sandbox Code Playgroud)

注意:VLCPluginClass 已弃用,请使用 VLCPlugin2Class

  • 删除“无法嵌入互操作类型‘AXVLC.VLCPlugin2Class’。请改用适用的接口”错误。右键单击 AXVLC 引用并转到属性。将“嵌入式互操作类型”设置为 false。 (5认同)
  • 尝试过此操作,但无法嵌入“互操作类型'AXVLC.VLCPlugin2Class'”。请改用编译器中适用的接口。` (2认同)