すべてのプロダクト
Search
ドキュメントセンター

ApsaraMQ for RocketMQ:.NET SDK 環境の準備

最終更新日:Mar 11, 2026

Windows アプリケーションからメッセージの送信および受信を行うために、ApsaraMQ for RocketMQ TCP クライアント SDK for .NET を設定します。

SDK のアーキテクチャ

ApsaraMQ for RocketMQ for .NET SDK は、C++ SDK をラップしたマネージドライブラリです。高い効率性および安定性を実現するために C++ のマルチスレッド並行処理を採用しており、Windows 向け .NET Framework のパブリックライブラリには依存しません。

Visual Studio で .NET プロジェクトをコンパイルする際、デフォルトのターゲットプラットフォームは `AnyCPU` であり、CPU の種類に応じて自動的に x86 または x64 を選択します。実行時において、.NET 共通言語ランタイム (CLR) 内のジャストインタイム (JIT) コンパイラが中間言語 (IL) コードを x86 または x64 のマシンコードに変換します。一方、基盤となる C/C++ DLL は x64 マシンコードとしてコンパイルされています。そのため、SDK ではリリースモード向けに Visual Studio 2015 および .NET Framework 4.5.2 を使用してビルドされた 64 ビット DLL を提供しています。この 64 ビット DLL は、他のバージョンの Visual Studio とも互換があります。

重要
  • SDK は Windows 64 ビットオペレーティングシステムのみをサポートします。

  • C++ DLL は Visual C++ 2015 ランタイムを必要とします。該当ランタイムがインストールされていない場合は、SDK パッケージに含まれる vc_redist.x64.exe インストーラーを実行してください。

前提条件

開始する前に、以下の条件を満たしていることを確認してください。

  • アプリケーションをデプロイするための Alibaba Cloud Elastic Compute Service (ECS) インスタンス

  • Windows 64 ビットオペレーティングシステム

  • Visual Studio 2015(64 ビット DLL は他のバージョンの Visual Studio とも互換)

  • .NET Framework 4.5.2

  • Visual C++ 2015 ランタイム(未インストールの場合は、SDK パッケージ内の vc_redist.x64.exe をインストールしてください)

  • ApsaraMQ for RocketMQ コンソール で作成済みのトピックおよびグループ ID(メッセージタグはアプリケーションコード内で指定可能)

SDK のダウンロード

新規ユーザーおよびアップグレードコストを懸念しない既存ユーザーには、リリースノート ページから最新版の .NET SDK をダウンロードすることを推奨します。

パッケージを展開すると、ディレクトリ構造は以下のようになります。

ディレクトリまたはファイル

説明

lib/

基盤となる C++ DLL ファイルおよび Visual C++ 2015 ランタイムインストーラー

lib/64/ONSClient4CPP.lib

C++ 静的ライブラリ

lib/64/ONSClient4CPP.dll

C++ 動的ライブラリ

lib/64/ONSClient4CPP.pdb

デバッグシンボル

lib/vc_redist.x64.exe

Visual C++ 2015 ランタイムインストーラー

demo/

通常メッセージ、ワンウェイメッセージ、順序付きメッセージの送信および通常・順序付きメッセージの消費に関するサンプルコード

interface/

P/Invoke ラッパーのコード(プロジェクト内に必ず含める必要があります)

SDK_GUIDE.pdf

SDK 環境構築ガイドおよびよくある質問

changelog

各リリースにおけるバグ修正および新機能

lib/ ディレクトリ内のファイル名は、SDK のバージョンによって異なる場合があります。

.NET コンソールプロジェクトの設定

  1. Visual Studio でプロジェクトを作成します。

    Create project

  2. P/Invoke ラッパーのファイルを追加します:プロジェクトを右クリックし、[追加] > [既存の項目の追加] を選択し、展開した SDK パッケージの interface/ ディレクトリからすべてのファイルを選択します。

    Add interface files

  3. ビルド構成を設定します:プロジェクトを右クリックし、[プロパティ] > [構成マネージャー] を選択し、[アクティブなソリューション構成][リリース] に、[アクティブなソリューションプラットフォーム][x64] に設定します。

  4. アプリケーションを記述・コンパイルした後、SDK の DLL ファイルを実行可能ファイルの出力ディレクトリ(またはシステムディレクトリ)にコピーし、プログラムを実行します。

    DLL files in output directory

SDK には事前に構成済みのデモプロジェクトが含まれており、そのまま開いて直接コンパイルできます。実行する前に、必要な DLL ファイルを実行可能ファイルのディレクトリにコピーしてください。Copy DLL files

ASP.NET Web Forms プロジェクトの設定

  1. Visual Studio で ASP.NET 向け Web Forms プロジェクトを作成します。

    Create Web Forms project

  2. ビルド構成を設定します:プロジェクトを右クリックし、[プロパティ] > [構成マネージャー] を選択し、[アクティブなソリューション構成][リリース] に、[アクティブなソリューションプラットフォーム][x64] に設定します。

    Set platform to x64

  3. P/Invoke ラッパーのファイルを追加します:プロジェクトを右クリックし、[追加] > [既存の項目の追加] を選択し、展開した SDK パッケージの interface/ ディレクトリからすべてのファイルを選択します。詳細については、「.NET コンソールプロジェクトの設定」の手順 2 をご参照ください。

  4. Global.asax.cs ファイルに SDK の起動およびシャットダウンコードを追加します。以下の例では、アプリケーション起動時にプロデューサーを初期化・起動し、アプリケーション終了時に正常にシャットダウンします。

       using System;
       using System.Collections.Generic;
       using System.Linq;
       using System.Web;
       using System.Web.Optimization;
       using System.Web.Routing;
       using System.Web.Security;
       using System.Web.SessionState;
       using ons;    // SDK 名前空間
       using test;   // ラッパークラスの名前空間
    
       namespace WebApplication4
       {
           public class Global : HttpApplication
           {
               void Application_Start(object sender, EventArgs e)
               {
                   // 標準的な ASP.NET 起動処理
                   RouteConfig.RegisterRoutes(RouteTable.Routes);
                   BundleConfig.RegisterBundles(BundleTable.Bundles);
    
                   try
                   {
                       // プロデューサーの初期化および起動
                       OnscSharp.CreateProducer();
                       OnscSharp.StartProducer();
                   }
                   catch (Exception ex)
                   {
                       // 初期化エラーの処理
                   }
               }
    
               protected void Application_End(object sender, EventArgs e)
               {
                   try
                   {
                       // プロデューサーの正常なシャットダウン
                       OnscSharp.ShutdownProducer();
                   }
                   catch (Exception ex)
                   {
                       // シャットダウンエラーの処理
                   }
               }
           }
       }
  5. アプリケーションを記述・コンパイルします。

  6. SDK の DLL ファイルを実行可能ファイルの出力ディレクトリ(またはシステムディレクトリ)にコピーし、プログラムを実行します。

    DLL files for ASP.NET project

  7. 64 ビット版 IIS Express を有効化します: [ツール] > [オプション] > [プロジェクトとソリューション] > [Web プロジェクト] を選択し、[64 ビット版 IIS Express を使用する] のチェックボックスをオンにします。

    IIS Express settings

    Projects and Solutions settings

次のステップ

環境の設定が完了したら、demo/ ディレクトリ内のサンプルコードを使用してメッセージの送信および受信を行ってください。トピック、グループ ID、メッセージタグの作成方法については、「リソースの作成」をご参照ください。