AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 1020103
Accepted
CodingEE
CodingEE
Asked: 2020-06-05 13:51:01 +0800 CST2020-06-05 13:51:01 +0800 CST 2020-06-05 13:51:01 +0800 CST

无法加载 DLL 'Msacm32.dll':找不到指定的模块

  • 772

我想补充一下这个问题。
以前,当我运行运行旧版 Windows 2016 Server DC 安装的旧 DC 服务器时,这是有效的。
一旦我们丢失了该 DC,然后硬盘驱动器故障导致备份 DC 以及整个 Web 森林失效,我们就失去了让该站点正常运行的能力。
所以,过去的工作,现在,无论微软做什么,都行不通。

错误

无法加载 DLL 'Msacm32.dll':找不到指定的模块。
(来自 HRESULT 的异常:0x8007007E)

说明:执行当前 Web 请求期间发生未处理的异常。请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息。

异常详细信息:System.DllNotFoundException:无法加载 DLL
'Msacm32.dll':找不到指定的模块。(来自 HRESULT 的异常:0x8007007E)

这是堆栈跟踪:

[DllNotFoundException:无法加载 DLL 'Msacm32.dll':找不到指定的模块。(HRESULT 异常:0x8007007E)]
NAudio.Wave.Compression.AcmInterop.acmFormatSuggest2(IntPtr hAcmDriver,IntPtr sourceFormatPointer,IntPtr destFormatPointer,Int32 sizeDestFormat,AcmFormatSuggestFlagsSuggestFlags)+0
NAudio.Wave.Compression.AcmStream.SuggestPcmFormat(WaveFormatcompressedFormat)+108
NAudio.Wave.AcmMp3FrameDecompressor..ctor(WaveFormat sourceFormat) +38 NAudio.Wave.Mp3FileReader.CreateAcmFrameDecompressor(WaveFormat mp3Format) +25 NAudio.Wave.Mp3FileReader..ctor(Stream inputStream, FrameDecompressorBuilder frameDecompressorBuilder, Boolean ownInputStream) +838 NAudio.Wave .Mp3FileReader..ctor(字符串 mp3FileName)+83
TagLib._Default.UploadMultipleFiles(Object sender, EventArgs e) in G:\Inetpub\wwwroot\website.com\Media\Default.aspx.vb:94
System.Web.UI.Control.OnLoad(EventArgs e) +95
System. Web.UI.Control.LoadRecursive() +59
System.Web.UI.Page.ProcessRequestMain(布尔includeStagesBeforeAsyncPoint,布尔includeStagesAfterAsyncPoint) +678

它引用了文件 NAudio.dll
因此,我使用以下命令在每个核心服务器上注册了这个文件。

windows\microsoft.net\framework\v2.0.50727\regasm     
G:\InetPub\wwwroot\website.com\Media\Bin\NAudio.dll

但是,我尝试将其添加到全局缓存中。它声明它没有一个强大的名称。

"Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.7.2 Tools"
gacutil -i G:\InetPub\wwwroot\website.com\Media\Bin\NAudio.dll

我重新启动了每个 IIS 实例,但仍然收到上述错误。

毕竟
我做了一些搜索 Msacm32.dll,它不在
我在桌面体验中检查的任何 Window 2016 CORE 服务器中,它在 system32 和 syswow64 文件夹中。
我将文件复制到当前活动的服务器核心并尝试注册它。
syswow64>REGSVR32 /i Msacm32.dll
它说它不是一个有效的 dll 或 ocx 文件。

我不记得这个文件之前有这个问题,这是我第一次看到这个文件出现这个错误。

我试图记住我是否安装了过去可能将该文件添加到 CORE 服务器的东西,但我不记得必须这样做。
我知道我刚刚注册了 MP3 音频文件,但从来没有对 CORE 服务器上的 Microsoft 音频文件做任何事情。

更新
我将文件复制到所有核心服务器的 syswow64 文件夹中。
现在,我收到以下错误。

试图加载格式不正确的程序。(来自 HRESULT 的异常:0x8007000B) 说明:在执行当前 Web 请求期间发生未处理的异常。请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息。

异常详细信息:System.BadImageFormatException:尝试加载格式不正确的程序。(来自 HRESULT 的异常:0x8007000B)

所以,这让我知道我移动了错误版本的文件,这是一件好事。(我认为)。所以,我将尝试复制另一个较小版本的文件,看看那里会发生什么。
我将发布我的发现。

下
一个更新用较小的文件更新,我得到这个错误。

NoDriver calling acmFormatSuggest
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: NAudio.MmException: NoDriver calling acmFormatSuggest 

对此的任何帮助将不胜感激。
EE

iis windows-server-2016
  • 1 1 个回答
  • 466 Views

1 个回答

  • Voted
  1. Best Answer
    CodingEE
    2020-06-06T15:29:28+08:002020-06-06T15:29:28+08:00

    好的。
    这是我发现的。
    在没有桌面体验的 Windows 2016 Server Core 下不再支持我当前使用的 NAudio 组件。而2016 Server Core,没有做桌面体验的能力,也不想加到核心服务器上。

    NAudio 组件的开发人员在他的网站上有关于此错误和问题的所有信息。
    NoDriver 调用 acmFormat 建议使用 NAudio 播放 MP3

    我正在寻找另一种获取 MP3 元数据的解决方案,例如我也用于元数据的
    TagLib
    (NAudio 严格用于文件持续时间,因为它返回了正确的数据,而 TagLib 没有。TagLib 的作者正在工作在上面。)。

    我希望以上信息对可能遇到同样问题的其他人有所帮助。如果您在 Server 2016 Core 上使用 NAudio,它将不再工作。

    • 0

相关问题

  • 2003 Server企业版不能运行ASP.NET应用程序?

  • 启用集成 Windows 身份验证时,ASP(经典)在哪个帐户下运行?

  • 是否有一种简单的方法可以生成有关 IIS 中“死”文件的报告?

  • IIS 7 中的 URL 重写

  • 对于 ASP.Net 应用程序,Windows 64 位相对于 32 位的主要优势是什么?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve