介尘部落

文学|音乐|休闲娱乐|计算机技术|地球科学|社会学——知识成就命运


DotnetCore MVC 项目异常 "Unable to load DLL 'libmp3lame.32.dll'的处理

这个异常出现于NAudio.Lame的使用过程中。

从Nuget下载安装NAudio.Lame包,在Console应用下调试使用、转换MP3格式都没问题,但放在Mvc项目下,却爆出异常,转换直接出错。

Unable to load DLL 'libmp3lame.32.dll': The specified module could not be found.

解决方法如下:

在调用NAudio.Lame提供的方法之前,添加环境变量“Path”的路径为当前应用的bin路径,然后MVC项目在执行时就可以在当前目录下去查找对应的dll。代码实现方法如下:

public static void CheckAddBinPath()
{
    // find path to 'bin' folder
    var binPath = Path.Combine(new string[] { AppDomain.CurrentDomain.BaseDirectory, "bin" });
    // get current search path from environment
    var path = Environment.GetEnvironmentVariable("PATH") ?? "";

    // add 'bin' folder to search path if not already present
    if (!path.Split(Path.PathSeparator).Contains(binPath, StringComparer.CurrentCultureIgnoreCase))
    {
        path = string.Join(Path.PathSeparator.ToString(), new string[] { path, binPath });
        Environment.SetEnvironmentVariable("PATH", path);
    }
}

如果你也遇到了”Unable to load DLL ‘libmp3lame.32.dll’就赶快试试吧。

阅读全文
公众号-介尘阅读时光
赞赏支持

0 Responses to “DotnetCore MVC 项目异常 "Unable to load DLL 'libmp3lame.32.dll'的处理”

Leave a Reply

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

(required)

(required)