How do I get a MQ redistributable client ?
Refer here which mentions about how to get a redistributable client and to unpack the clients.
How do I execute a .NET application using redistributable client?
Windows C runtime libraries: You might already have these on your machine already, but if you do not, you need to download and install the following Microsoft C/C++ runtime libraries:
Microsoft Visual C++ Redistributable 2008
Microsoft Visual C++ Redistributable 2012
Now that you have downloaded the client and have unpacked them, it is good to go with executing the application. Looking for MQ runtime dll ( amqmdnet.dll) in GAC limits the benefits of redistribution, so .NET redistributable applications have to locate the appropriate assemblies by other means. Refer here to know about the 2 options that work in this situation. The .NET runtime attempts to locate the assemblies through probing or using the DEVPATH environment variable. The same link mentions about the steps required to execute .NET redistributable applications using either of these 2 options.
Primary IBM MQ installation is not mandatory to be available in case of probing option.
DEVPATH is recommended to be used only during development time. The .NET runtime doesn't check the versions on strong-named assemblies found in the DEVPATH. It simply uses the first assembly it finds. Hence it is not recommended to be used in production environment.
How to generate MQ trace for .NET client applications connecting in managed mode using Redistributable clients ?
Following the same procedure as in stand-alone IBM MQ.NET client will generate traces in case of .NET clients connecting in managed mode. The trace will be generated in MQTRACEPATH or in the current directory of the application as per the configuration.
How to generate MQ trace for .NET client applications connecting in unmanaged mode using Redistributable clients ?
The standard tools that are used for starting and stopping traces (i.e) strmqtrc and endmqtrc can be used. The trace will be generated in DataPath\trace folder, the DataPath can be obtained from dspmqver command.
Name: IBM MQ
BuildType: IKAP - (Production)
Platform: IBM MQ for Windows (x64 platform)
O/S: Windows Server 2008 R2 Server Enterprise Edition, Build 7601: SP1
InstDesc: IBM MQ V220.127.116.11 (Redistributable)
Executing a .NET Redistributable application reports COMException (0x80040153), how to go about it?
C:\18.104.22.168-WS-MQC-Redist-Win64\bin>SimplePublish.exe -t Sports/Football -p 5335
Unhandled Exception: System.Runtime.InteropServices.COMException (0x80040153): I
nvalid value for registry (Exception from HRESULT: 0x80040153 (REGDB_E_INVALIDVA
at System.AppDomain.SetupFusionStore(AppDomainSetup info)
at System.AppDomain.SetupDomain(Boolean allowRedirects, String path, String c
Cause: Application configuration file has <developmentMode> element set, however DEVPATH environment variable has not been set in the environment.
<developmentMode developerInstallation="true" />
Solution: Set the DEVPATH environment variable to specify the \bin directory from the redistributable image before running the application
Some points in general to note about redistributable client :-
You can unpack the redistributable image to any location other than the same location as a full IBM MQ installation.
A redistributable client runtime co-exists with a full IBM MQ client or server installation, provided that they are installed in different locations.
There is a minor change to the default data path in case of redistributable clients, it is %HOMEDRIVE%\%HOMEPATH%\IBM\MQ\data.