难以运行.net MQ应用程序

时间:2014-10-29 18:41:06

标签: .net ibm-mq windows-server-2003 filenotfoundexception mq

您好,我在运行.NET应用程序时遇到以下错误

D:\Program Files\AscentSS\AscentSV\Staging\SimplePut>SimplePut -q ESB.BAT1.SERVICES.KOFAX.DOC.METADATA -h 10.49.97.31 -p 1417 -l BLI1.KOFAX.CLIENT
Start of SimplePut Application

Exception caught: System.IO.FileNotFoundException: Could not load file or assembly 'amqmdnet, Version=7.5.0.1, Culture=neutral, publicKeyToken=dd3cb1c9aae9ec97' or one of its dependencies. The system cannot find the file specified. File name: 'amqmdnet, Version=7.5.0.1, Culture=neutral, PublicKeyToken=dd3cb1c9aae9ec97'
   at SimplePut.SimplePut.PutMessages()
   at SimplePut.SimplePut.Main(String[] args) in C:\Users\youngj\Documents\Visual Studio 2010\Projects\SimplePut\SimplePut.cs:line 102

WRN: Assembly binding logging is turned OFF.
To enable assembly bind failure logging, set the registry value [HKLM\Software\Microsoft\Fusion!EnableLog] (DWORD) to 1.
Note: There is some performance penalty associated with assembly bind failure logging.
To turn this feature off, remove the registry value [HKLM\Software\Microsoft\Fusion!EnableLog].

Sample execution FAILED!

End of SimplePut Application

但是,具有相同公共令牌的文件确实存在:

D:\Program Files\IBM\WebSphere MQ\bin>"C:\Program Files\Microsoft SDKs\Windows\v
7.0A\bin\sn" -T amqmdnet.dll

Microsoft (R) .NET Framework Strong Name Utility  Version 3.5.30729.1
Copyright (c) Microsoft Corporation.  All rights reserved.

Public key token is dd3cb1c9aae9ec97

有什么想法吗?应用程序是在x64 Win7上编译的。试图在x32 Win2003服务器上运行它。感谢。

1 个答案:

答案 0 :(得分:1)

MQs .NET层不是一个dll,它们是多个(amqmdxcs,amqmdnet,amqmdmsg等) - 尤其是大约7.0.1。您是否实际安装了MQ服务器/客户端软件,或者您是否尝试部署带有MQ引用的应用程序并希望它与包含MQ部件一起部署?

尝试在正确安装了MQ产品的计算机上运行代码 - 如果是7.1或更高版本,则需要将其设置为主要(默认为正常)以便在GAC中注册MQ部件,或者需要配置指向MQ dll在文件系统上的内容的文件。看一下Tools \ dotnet \ samples \ cs \ base,尝试先使用基本样本。

如果所有其他方法都失败了,请执行指令告诉您的内容并启用日志记录并查看其显示内容: - )