我使用 Dynamic Audio Normalizer为我的 WF 解决方案规范化音频文件音量。它有两个 .dll 库,必须连接到项目才能使用。其中之一 - .NET 库连接良好,另一个 - API 根本无法用于项目。在运行时我得到一个详细描述的 FileNotFound
异常
Could not load file or assembly "DynamicAudioNormalizerNET.dll" or one of its dependencies .
文档中也写了
Microsoft.NET-based Application → Use the DynamicAudioNormalizerNET C++/CLI wrapper class, provided by the DynamicAudioNormalizerNET.dll assembly, requires DynamicAudioNormalizerAPI.dll at runtime.
它的依赖项当然是“DynamicAudioNormalizerAPI.dll”,但它在解决方案的文件夹中以及 NET.dll 中。此外,这两个库都作为文件添加到解决方案中,并且它们的“复制到输出”功能设置为“始终复制”。如何链接这两个 DLL 或使其正常运行?
最佳答案
有两个可能的原因。
第一个原因可能是
DynamicAudioNormalizerAPI.dll
没有和DynamicAudioNormalizerNET.dll
放在一起。检查Copy local
reference property(在 Solution Explorer 中)并确保这两个 dll 放在一起。DynamicAudioNormalizerAPI.dll
可能有自己 Unresolved 依赖项。您可以通过使用特殊工具打开.dll
轻松检查 Dependency Walker .如果您还需要一些runtime
或其他东西,它会告诉您。
关于c# - 如何将包装器 DLL 连接到 API DLL 以便在 C# 项目中使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37093204/