.NET 的样本应用程序

要运行您自己的 .NET 应用程序,请使用验证程序的指示信息,将应用程序名称替换为样本应用程序。

提供了以下样本应用程序:
  • put message 应用程序
  • get message 应用程序
  • “hello world”应用程序
  • publish/subscribe 应用程序
  • 使用消息属性的应用程序

所有这些样本应用程序都提供了 C# 语言版本,部分也提供了 C++ 和 Visual Basic 语言版本。 您可以使用 .NET支持的任何语言编写应用程序。

“Put message”程序 SPUT (nmqsput.cs, mmqsput.cpp, vmqsput.vb)
该程序显示如何将消息放入指定的队列。 该程序具有以下三个参数:
  • 队列名称(必需),例如 SYSTEM.DEFAULT.LOCAL.QUEUE
  • 队列管理器名称(可选)
  • 通道定义(可选),例如 SYSTEM.DEF.SVRCONN/TCP/hostname(1414)
如果未提供队列管理器名称,那么队列管理器将缺省为缺省本地队列管理器。 如果定义了通道,那么它具有与 MQSERVER 环境变量相同的格式。
“Get message”程序 SGET (nmqsget.cs, mmqsget.cpp, vmqsget.vb)
该程序显示如何从指定队列中获取消息。 该程序具有以下三个参数:
  • 队列名称(必需),例如 SYSTEM.DEFAULT.LOCAL.QUEUE
  • 队列管理器名称(可选)
  • 通道定义(可选),例如 SYSTEM.DEF.SVRCONN/TCP/hostname(1414)
如果未提供队列管理器名称,那么队列管理器将缺省为缺省本地队列管理器。 如果定义了通道,那么它具有与 MQSERVER 环境变量相同的格式。
“Hello World”程序 (nmqwrld.cs, mmqwrld.cpp, vmqwrld.vb)
该程序显示如何放入和获取消息。 该程序具有以下三个参数:
  • 队列名称(可选),例如 SYSTEM.DEFAULT.LOCAL.QUEUE 或 SYSTEM.DEFAULT.MODEL.QUEUE
  • 队列管理器名称(可选)
  • 通道定义(可选),例如 SYSTEM.DEF.SVRCONN/TCP/hostname(1414)
如果未提供队列名称,那么名称将缺省为 SYSTEM.DEFAULT.LOCAL.QUEUE。 如果未提供队列管理器名称,那么队列管理器将缺省为缺省本地队列管理器。
“Publish/subscribe”程序 (MQPubSubSample.cs)
此程序显示如何使用 IBM® MQ 发布/预订。 该程序仅提供 C# 版本。 该程序具有两个参数:
  • 队列管理器名称(可选)
  • 通道定义(可选)
“Message properties”程序 (MQMessagePropertiesSample.cs)
该程序显示如何使用消息属性。 该程序仅提供 C# 版本。 该程序具有两个参数:
  • 队列管理器名称(可选)
  • 通道定义(可选)

您可以通过编译和运行这些应用程序来验证您的安装。

安装位置

根据编写样本应用程序时使用的语言,样本应用程序安装在以下位置。 MQ_INSTALLATION_PATH 表示安装了 IBM MQ 的高级目录。
C#

MQ_INSTALLATION_PATH\Tools\dotnet\samples\cs\nmqswrld.cs

MQ_INSTALLATION_PATH\Tools\dotnet\samples\cs\nmqsput.cs

MQ_INSTALLATION_PATH\Tools\dotnet\samples\cs\nmqsget.cs

MQ_INSTALLATION_PATH\Tools\dotnet\samples\cs\MQPubSubSample.cs

MQ_INSTALLATION_PATH\Tools\dotnet\samples\cs\MQMessagePropertiesSample.cs

托管 C++

MQ_INSTALLATION_PATH\Tools\dotnet\samples\mcp\mmqswrld.cpp

MQ_INSTALLATION_PATH\Tools\dotnet\samples\mcp\mmqsput.cpp

MQ_INSTALLATION_PATH\Tools\dotnet\samples\mcp\mmqsget.cpp

Visual Basic

MQ_INSTALLATION_PATH\Tools\dotnet\samples\vb\vmqswrld.vb

MQ_INSTALLATION_PATH\Tools\dotnet\samples\vb\vmqsput.vb

MQ_INSTALLATION_PATH\Tools\dotnet\samples\vb\vmqsget.vb

MQ_INSTALLATION_PATH\Tools\dotnet\samples\vb\xmqswrld.vb

MQ_INSTALLATION_PATH\Tools\dotnet\samples\vb\xmqsput.vb

MQ_INSTALLATION_PATH\Tools\dotnet\samples\vb\xmqsget.vb

构建样本应用程序

为构建样本应用程序,为每种语言提供了一个批处理文件。

C#

MQ_INSTALLATION_PATH\Tools\dotnet\samples\cs\bldcssamp.bat

bldcssamp.bat 文件针对每个样本都包含一行内容,它是构建该样本程序所必需的:
csc /t:exe /r:System.dll /r:amqmdnet.dll /lib: MQ_INSTALLATION_PATH\bin
/out:nmqwrld.exe nmqwrld.cs
托管 C++

MQ_INSTALLATION_PATH\Tools\dotnet\samples\mcp\bldmcpsamp.bat

bldmcpsamp.bat 文件针对每个样本都包含一行内容,它是构建该样本程序所必需的:
cl /clr:oldsyntax MQ_INSTALLATION_PATH\bin mmqwrld.cpp
如果要在 Microsoft Visual Studio 2003/.NET SDKv1.1上编译这些应用程序,请替换编译命令:
cl /clr:oldsyntax MQ_INSTALLATION_PATH\bin mmqwrld.cpp
替换为
cl /clr MQ_INSTALLATION_PATH\bin mmqwrld.cpp
Visual Basic

MQ_INSTALLATION_PATH\Tools\dotnet\samples\vb\bldvbsamp.bat

bldvbsamp.bat 文件针对每个样本都包含一行内容,它是构建该样本程序所必需的:
vbc /r:System.dll /r: MQ_INSTALLATION_PATH\bin\amqmdnet.dll /out:vmqwrld.exe vmqwrld.vb

用于将 IBM MQMicrosoft .NET Core 配合使用的样本

IBM MQ 9.2.0开始, IBM MQ 支持 .NET Core 用于 Windows 环境中的 IBM MQ .NET 应用程序。 IBM MQ classes for .NET 缺省情况下,标准 (包括样本) 作为标准 IBM MQ 安装的一部分进行安装。

IBM MQ .NET 的样本应用程序安装在 &MQINSTALL_PATH&/samp/dotnet/samples/cs/core/base 中。 脚本同样已提供,可用于编译样本。

您可以使用提供的 build.bat 文件来构建样本。 每个样本在 Windows 上的以下位置中都有一个 build.bat
  • MQ\tools\dotnet\samples\cs\core\base\SimpleGet
  • MQ\tools\dotnet\samples\cs\core\base\SimplePut

[Linux]IBM MQ 9.2.0开始, IBM MQ 还支持针对 Linux® 环境中的应用程序的 Core。

有关将 IBM MQMicrosoft .NET Core配合使用的更多信息,请参阅 安装 IBM MQ classes for .NET