3

Ibm mq 无法在 64 位 Windows 机器中加载它。

Dim objMQ As Object
objMQ=CreateObject("MQAX200.MQSession")

我明白了

“无法创建 ActiveX 组件。”

在 64 位机器中,它在 32 位机器操作系统中运行良好。

我的问题是如何更改上述代码以在 64 位操作系统中工作?

4

1 回答 1

4

在 Windows 7 64 位上,那段代码对我来说很好用。我正在使用 MQ v7.1。

您想使用 MQAX200 是否有特定原因?这个界面很久没有更新了。您可以使用 MQ .NET 接口代替 MQAX200,该接口比 MQAX200 更新并具有更多功能。

MQ .NET 接口包含在“amqmdnet.dll”程序集中,可以在 MQ 安装的“bin”文件夹中找到。只有一个程序集适用于 32 位和 64 位架构。您只需要在项目中引用“amqmdnet”。“\tools\dotnet\samples\cs\base”文件夹下也有一些样本。

编辑:示例代码:

            properties = new Hashtable();
            properties.Add(MQC.TRANSPORT_PROPERTY, MQC.TRANSPORT_MQSERIES_MANAGED);
            properties.Add(MQC.HOST_NAME_PROPERTY, hostName);
            properties.Add(MQC.PORT_PROPERTY, port);
            properties.Add(MQC.CHANNEL_PROPERTY, channelName);

            MQQueueManager queueManager = new MQQueueManager (queueManagerName,
                                                              properties);
            queue = queueManager.AccessQueue(queueName, 
                                       MQC.MQOO_OUTPUT + MQC.MQOO_FAIL_IF_QUIESCING);
于 2012-12-20T02:22:52.410 回答