【发布时间】:2021-10-15 09:28:54
【问题描述】:
我遇到了与 LibVLCSharp 和 bin\Debug 输出相关的间歇性构建问题。
当我构建一个包含 LibVLCSharp 项目的解决方案时,我可以在最终的 win-x64 输出文件夹中看到 libvlc.dll,但是当我开始调试时,以下文件被删除,并且应用程序失败:
LibVLCSharp.Shared.VLCException: 'Failed to load required native libraries.
Have you installed the latest LibVLC package from nuget for your target platform?
唯一被删除的文件是:
- libvlc.dll
- libvlc.lib
- libvlccore.dll
- libvlccore.lib
这是一个间歇性问题,似乎在我重新启动后得到解决。
在什么情况下解决方案输出文件夹中的文件会在调试启动时被清除?
bin\Debug\net5.0-windows\libvlc\win-x64\
我可以通过将文件复制回来手动解决此问题,但我试图了解为什么会发生这种情况。
解决方案中没有构建前或构建后的步骤。
【问题讨论】:
-
LibVLC 包是否正确安装在 Starter 项目中? (它不应该安装在其他项目上,而是安装在您启动的项目上。
-
否则,我们需要一个最小的可重现项目来进行测试。您对 msbuild 目标有什么特别之处吗?
-
这可能与您的“Fullfilled.Tasks”项目有关吗?
-
你能在这些文件上使用
copy always属性吗? -
@cube45 - 我在引用 libvlcsharp api 的 Tasks 项目中安装了 LibVLC,但在 Startup 项目(Starter)中没有安装。这可能是问题所在 - 这是有道理的,因为我不需要“编译”libvlc.dll,只需将其链接到启动应用程序,并且需要在我使用 api 的项目中添加 libvlvsharp 作为参考。接得好。我对 msbuild 项目没有什么特别的,都是默认的。让我测试并回复给你。谢谢!
标签: c# .net visual-studio libvlcsharp