2

我正在 c# .net 4 上构建一个 Winform 应用程序。我正在尝试使用 VLC 插件作为工具箱 COM 组件。组件已成功添加到工具箱中。但是,当我使用它时,会出现错误:

未能创建组件“AxHost”。错误消息如下:'System.Runtime.InteropServices.COMException (0x80029C4A):加载类型库/DLL 时出错。(来自 HRESULT 的异常:0x80029C4A(TYPE_E_CANTLOADLIBRARY)

我在 32 位系统上尝试了同样的方法,它工作正常。此错误出现在 64 位系统中。尝试将构建更改为 32 位和 64 位。

我还尝试使用 regserv32 注册 DLL。但我不确定我是否注册了正确的 DLL。

我该如何解决这个问题?

4

2 回答 2

4

VLC 2.x 版对托管代码不友好,除非它被重新编译为共享并作为可执行服务器运行(以及其他问题)。与其重新构建插件,不如使用稍旧的插件。

  1. 在此处下载 V 1.1.9:http: //download.videolan.org/pub/videolan/vlc/1.1.9/win32/
  2. 我建议卸载现有的 VLC,然后安装上面的 VLC(使用 activeX 选项)。
  3. 使用 CMD 和 Regsvr32 以及 activeX 文件夹注册控件 (AXVLC.DLL),例如:REGSVR32 C:\WINDOWS\AXVLC.DLL

要记住的一些提示:

  1. 如果出现播放错误,您可能无法访问这些库。它们位于插件文件夹中。我相信您可以将文件夹复制到 activeX 文件夹。
  2. 我听说您还需要将 libVLC.dll 复制到同一个文件夹中。
  3. 您需要先将媒体文件添加到播放列表,然后才能播放。
于 2013-09-11T04:54:35.170 回答
0

发现这个旧线程现在是 2018 年 5 月,我仍然遇到了这个问题。原来,因为我安装了 64 位版本的 VLC,所以它不起作用。需要安装 32 位版本 3.02 和 activex 才能工作。

于 2018-05-04T15:26:49.047 回答