This is how you should do it:
System.String line = "This is a test message embedded in the MQTest01 program.";
int openOptions = MQC.MQOO_OUTPUT + MQC.MQOO_FAIL_IF_QUIESCING;
try
{
MQQueueManager _qMgr = new MQQueueManager(qManager);
System.Console.Out.WriteLine("MQTest01 successfully connected to " + qManager);
MQQueue queue = _qMgr.AccessQueue(outputQName, openOptions, null, null, null);
System.Console.Out.WriteLine("MQTest01 successfully opened " + outputQName);
MQPutMessageOptions pmo = new MQPutMessageOptions();
MQMessage sendmsg = new MQMessage();
sendmsg.Format = MQC.MQFMT_STRING;
sendmsg.Feedback = MQC.MQFB_NONE;
sendmsg.MessageType = MQC.MQMT_DATAGRAM;
sendmsg.MessageId = MQC.MQMI_NONE;
sendmsg.CorrelationId = MQC.MQCI_NONE;
sendmsg.WriteString(line);
// put the message on the queue
queue.Put(sendmsg, pmo);
System.Console.Out.WriteLine("Message Data>>>" + line);
queue.Close();
System.Console.Out.WriteLine("MQTest01 closed: " + outputQName);
_qMgr.Disconnect();
System.Console.Out.WriteLine("MQTest01 disconnected from " + qManager);
}
catch (MQException mqex)
{
System.Console.Out.WriteLine("MQTest01 cc=" + mqex.CompletionCode + " : rc=" + mqex.ReasonCode);
}
catch (System.IO.IOException ioex)
{
System.Console.Out.WriteLine("MQTest01 ioex=" + ioex);
}