无法加载文件或程序集“Accord.Video.FFMPEG.dll”或其依赖项之一单击一次安装

问题描述 投票:0回答:1

具有“Accord.Video.FFMPEG.dll”并支持 DLL 的我的应用程序在开发环境中正常工作。当我发布并尝试单击一次安装时,我收到以下消息: 无法加载文件或程序集“Accord.Video.FFMPEG.dll”或其依赖项之一。指定的模块无法找到。 文件名:'Accord.Video.FFMPEG.dll'

按照其他帖子中的建议,我将以下 DLL 复制到我的 Visual Studio 项目中的 Resources 文件夹中,并指定为“始终复制到安装文件夹”。我在文件夹 C:\JPGManagerPublish\Application f 内的安装文件夹中看到它们 文件\JPGManager_3_0_0_179\资源

avcodec-57.dll avdevice-57.dll avfilter-6.dll avformat-6.dll avformat-57.dll avutil-55.dll postproc-54.dll swresample-2.dll swscale-4.dll

这些在应用程序安装文件夹中显示为 avcodec.57.dll.deploy 等

我使用安装程序安装应用程序,当我执行使用 Accord.Video.FFMPEG.dll 的功能时,我收到错误消息: 'Accord.Video.FFMPEG.dll' 或其依赖项之一。指定的模块无法找到。 文件名:'Accord.Video.FFMPEG.dll'

visual-studio dll ffmpeg clickonce video-processing
1个回答
0
投票

您可以尝试通过以下步骤解决:

  1. 使用 NuGet 中当前可用的最新包。

  2. 确保您的应用程序在 64 位模式下运行(检查 Environment.Is64BitProcess 和 Environment.Is64BitOperatingSystem),如果是这样,请仅从 NuGet 下载并安装 Accord.Video.FFMPEG.x64(不要安装 Accord.Video.FFMPEG) .

  3. 如果您仍然遇到问题,请检查 Directory.GetCurrentDirectory() 的值并确保 FFmpeg 的 dll 包含在此文件夹中。

  4. 尝试调整您的 PATH 变量以包含这些 .dll 所在的目录(通常在 Bin 文件夹中)。

    string oldPath = Environment.GetEnvironmentVariable("Path"); Environment.SetEnvironmentVariable("Path", pathToFFmpegDlls + ";" + oldPath);

© www.soinside.com 2019 - 2024. All rights reserved.