Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Which namespace (IBM.WMQ vs. IBM.WMQAX) should be used in the .NET library for IBM MQ WebSphere (amqmdnet.dll)

Tags:

c#

.net

ibm-mq

I am writing an application that gets data from IBM WebSphere MQ. IBM supplies a DLL with classes to interact with MQ. However, there appear to be two main namespaces; IBM.WMQ and IBM.WMQAX. The latter seems to be a newer addition, but the former appears to be what vague answers on various web sites suggest using for .NET applications. I was hoping someone here might be able to enumerate the real differences and what advantages/disadvantages the classes in each namespace offer.

like image 732
bubbleking Avatar asked Dec 19 '25 20:12

bubbleking


2 Answers

From this thread:

The IBM.WMQ is IBM's version of Neil Kolban's original work of converting the Java classes for MQ to classes for the .NET framework.

The IBM.WMQAX is IBM's COM component for accessing MQ (ActiveX)

If you're coding in .NET, use IBM.WMQ since it's managed code. If you're coding in VB6 or VC++ then use the ActiveX com component.

You could use the COM component from .NET using COM Interop, but that really would only make sense, IF, the classes for .NET were NOT available. Seeing that they are, use IBM.WMQ.

like image 169
stuartd Avatar answered Dec 22 '25 12:12

stuartd


You need to use IBM.WMQ namespace for developing .NET applications to interact with IBM MQ Queue Manager. The other one, IBM.WMQAX namespace is for ActiveX applications.

like image 45
Shashi Avatar answered Dec 22 '25 12:12

Shashi



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!