IBM MQ XMS v7.5。在 .Net C# amqmdnac.dll 中实现消息侦听器时出错

IBM MQ XMS v7.5. Error implementing Message Listener in .Net C# amqmdnac.dll missing

创建在 .Net C#MQ Client 7.5 中实现的 IBM MQ 消息监听器 时.0.2 安装 MQ 客户端 7.5 后,我 运行 遇到几个 问题。修复包 7.

其中一个也是最重要的一个是,我的客户端工具试图找到一个名为

的程序集

amqmdnac.dll

运行时在 %Program Files (x86)%\IBM\Websphere MQ\bin.

MQ 客户端 7.5 上不存在该文件。在 www 上搜索下载可能性或此问题的答案除了对 MQ Client 7.1 的提示没有帮助外没有任何结果。

事实上,这个解决方案只解决了一个症状,因为我的 x86 测试客户端与 ist 一起工作,但我的 x64 网络客户端引发了一个错误,因为程序集在 bin64 子文件夹中也丢失了。

我通过搜索

下面的所有子文件夹,在 *sources* 子文件夹之一中找到了 amqmdnac.dll

%程序文件 (x86)%\IBM\Websphere MQ。

刚把dll复制到

%程序文件 (x86)%\IBM\Websphere MQ\bin\

子文件夹,问题已解决。

这个问题我不是很懂。我不确定该程序集是否是 MQ Client 7.5 的一部分。但是我 运行 发现了几个没有意义的错误,因为我不得不将我的客户端版本从 7.5.0.2 更改为 7.5.0.7。

'source' 目录是为 FixPack 更新替换的那些文件的备份。听起来 FixPack 安装程序中有错误。您应该向 IBM 打开 PMR 并报告问题。

我刚刚检查了几个 Windows 服务器 运行 MQ V8.0.0.6 和 MQ v9.0.2.0,它们有:

  • {MQ_install_dir}\bin\amqmdnac.dll
  • {MQ_install_dir}\bin64\amqmdnac.dll

您应该停止使用 MQ v7.5,因为它将在 7 个月后停止支持。我会直接进入 MQ V9。

如果您安装服务器产品,默认情况下不会获取客户端库,您必须 select 它们 - amqmdnac 被识别为由客户端组件放置,因此不会被放置如果您仅安装采用默认设置的服务器产品然后升级到修复包 7,则磁盘也不会升级。考虑到您谈论应用修复包的事实,通常(并非总是)意味着您已经从服务器产品媒体安装。

在注册表树下查找 HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\IBM\WebSphere MQ\Installation\\组件 要么 HKEY_LOCAL_MACHINE\SOFTWARE\IBM\WebSphere MQ\Installation\\组件 "Local Clients\Windows NT Client" 的值应标识为已安装。如果没有,你还没有安装你需要的库。

阅读答案后,我开始检查我的 MQ Client 7.5 安装,该安装从 2016 年一开始就是最小的(自定义安装)。 我对 7.5 mq 客户端 进行了修改安装 并添加了包 "Windows Client" 和 .. 惊喜 .. 缺少的程序集 amqmdnac.dll 现在在 bin\ 和 bin64 中可用。

我想这就是 JasonE 在谈论 windows 注册表中的安装信息时的意思。

应用 7.5.0.7 修复包后,文件仍然可用并已更新

谢谢你们这么快的回复!