【发布时间】:2013-02-17 13:07:24
【问题描述】:
我已经构建了一个程序,它将使用 MediaInfo.dll 读取 mkv 文件的一些视频和音频信息。
该程序从源代码运行时运行良好,dll 位于bin 文件夹中。
现在我想发布我的应用程序并能够继续使用它。不再找到 MediaInfo.dll 库。我尝试将它放在C:\WIndows\ 或C:\Windows\system32 中,但没有成功。如果我运行安装程序(发布后),程序安装在同一位置(我不想要这个,但这是另一个问题)。我也尝试将 dll 放入该文件夹中。
向我抛出错误的代码是:
try{
Handle = MediaInfo_New();
}
catch (Exception ex){
Handle = (IntPtr)0;
Console.Out.WriteLine(ex.ToString());
}
错误抛出是System.BadImageFormatException 或System.DllNotFoundException: Unable to load DLL 'MediaInfo.dll'。
知道 dll 的放置位置吗?
【问题讨论】:
-
如果你只是将bin目录下的所有文件复制到其他计算机上怎么办?
-
不工作。还有其他想法吗?
-
是否有可能有更准确的错误描述的 innerException?
-
System.DllNotFoundException: 无法加载 DLL 'MediaInfo.dll': 找不到指定的模块。 (来自 HRESULT 的异常:0x8007007E)在 DescriptionMaker.MediaInfo.MediaInfo_New() 在 DescriptionMaker.MediaInfo..ctor()