Main Content

MATLAB Production ServerExcel 統合に対応したデプロイ可能なアーカイブの作成とインストール

サポートされるプラットフォーム: Microsoft® Windows® のみ。

この例では、MATLAB® 関数を使用して Excel® 統合に対応したデプロイ可能なアーカイブを作成する方法を説明します。その後、生成されたアーカイブを MATLAB Production Server™ にデプロイできます。

前提条件

MATLAB Compiler SDK™MATLAB Production Server 用の Excel アドインをビルドするには、.NET framework 4.0 以降が必要です。

Excel アドイン ファイル (.xla) を生成するには、Excel で [VBA プロジェクト オブジェクト モデルへのアクセスを信頼する] を有効にします。これを行わない場合、.bas ファイルを Excel にインポートすることでアドインを手動で作成できます。

MATLAB での関数の作成

MATLAB で、パッケージ化する MATLAB プログラムを調べます。

この例では、次のように関数 mymagic.m を記述します。

function y = mymagic(x)

y = magic(x);

MATLAB コマンド プロンプトで、mymagic(3) と入力して関数の出力を確認します。

 ans =
     8     1     6
     3     5     7
     4     9     2

Production Server コンパイラ アプリを使用した Excel 統合に対応するデプロイ可能なアーカイブの作成

Production Server コンパイラ アプリを使用して、関数を Excel 統合に対応するデプロイ可能なアーカイブにパッケージ化します。あるいは、プログラムによる方法を使用して MATLAB コマンド ウィンドウからデプロイ可能なアーカイブを作成する場合は、compiler.build.excelClientForProductionServer を使用した Excel 統合に対応するデプロイ可能なアーカイブの作成を参照してください。

  1. [Production Server コンパイラ] アプリを開くには、MATLAB プロンプトで「productionServerCompiler」と入力します。

    あるいは、[MATLAB アプリ] タブで、[アプリ] セクションの右端にある矢印をクリックします。[アプリケーションのデプロイ] で、[Production Server コンパイラ] をクリックします。[Production Server コンパイラ] プロジェクト ウィンドウで、[Excel 統合に対応したデプロイ可能なアーカイブ] をクリックします。

  2. [Production Server コンパイラ] プロジェクト ウィンドウで、デプロイする MATLAB アプリケーションのメイン ファイルを指定します。

    1. [エクスポートする関数] セクションで、the Add button をクリックします。

    2. [ファイルの追加] ウィンドウで、サンプルのフォルダーを参照し、パッケージ化する関数を選択します。

      [開く] をクリックします。

    ファイルを開くと、エクスポートする関数のリストに関数 mymagic.m が追加されます。

    Production Server Compiler app toolstrip, which includes mymagic.m in the Exported Functions section.

アプリケーションのカスタマイズ

Excel 統合に対応したデプロイ可能なアーカイブをカスタマイズし、アプリケーションに関する情報を追加できます。

  • アーカイブ情報 — Excel 統合に対応したデプロイ アーカイブに関する編集可能な情報。

  • クライアントの構成MATLAB Production Server クライアントを構成します。[既定のサーバー URL] を選択し、クライアントの待機のタイムアウトとレスポンスの最大サイズを決定して、オプションで https の自己署名証明書を提供します。

  • アーカイブの実行に必要な追加ファイル — 生成されるアーカイブの実行に必要な追加のファイル。これらのファイルは、生成されるアーカイブ インストーラーに含められます。コンパイラ プロジェクトの必須ファイルの管理を参照してください。

  • アーカイブでインストールされるファイル — クライアントおよびサーバー上にアーカイブと共にインストールされるファイル。サーバーにインストールされるファイルには以下が含まれます。

    • 生成されたデプロイ可能なアーカイブ (CTF ファイル)

    • 生成された readme.txt

    クライアントにインストールされるファイルには以下が含まれます。

    • mymagic.bas

    • mymagic.dll

    • mymagic.xla

    • readme.txt

    • ServerConfig.dll

    アプリケーションと共にインストールするファイルの指定を参照してください。

  • オプション — [結果のコンポーネントを開発マシンにのみ登録] オプションは、パッケージ化されたコンポーネントを開発マシン上の 1 人のユーザーにのみ登録します。

Panes of Production Server Compiler, including Archive information, Client configuration, and Files installed with your archive.

アプリケーションのパッケージ化

  1. パッケージ化されたアプリケーションを生成するには、[パッケージ化] をクリックします。

    [プロジェクトを保存] ダイアログ ボックスで、プロジェクトを保存する場所を指定します。

    Package dialog box

  2. [パッケージ] ダイアログ ボックスで、[プロセスが完了したら出力フォルダーを開く] が選択されていることを確認します。

    デプロイ プロセスが完了したら、生成された出力を調べます。

    • for_redistributionMATLAB Production Server クライアントおよびサーバー上でアーカイブを配布するインストーラーが含まれるフォルダー

    • for_redistribution_files_onlyMATLAB Production Server クライアントおよびサーバー上でアプリケーションを再配布するために必要なファイルが含まれるフォルダー

    • for_testing — インストーラー作成用の生の生成ファイルが含まれるフォルダー

    • PackagingLog.htmlMATLAB Compiler SDK により生成されたログ ファイル

compiler.build.excelClientForProductionServer を使用した Excel 統合に対応するデプロイ可能なアーカイブの作成

Production Server コンパイラ アプリの代わりに、プログラムによる方法を使用して Excel 統合に対応するデプロイ可能なアーカイブを作成できます。

  1. mymagic.m を使用して Production Server アーカイブを作成し、ビルド結果を compiler.build.Results オブジェクトに保存します。

    buildResults = compiler.build.productionServerArchive('mymagic.m');
  2. 関数 compiler.build.excelClientForProductionServer を使用して、Excel 統合に対応するデプロイ可能なアーカイブをビルドします。

    mpsxlResults = compiler.build.excelClientForProductionServer(buildResults, ...
    'Verbose','on');

    compiler.build コマンドで名前と値の引数を使用して、追加オプションを指定できます。詳細については、compiler.build.excelClientForProductionServer を参照してください。

    compiler.build.Results オブジェクト buildResults には、ビルド タイプ、生成ファイル、含まれるサポート パッケージ、およびビルド オプションに関する情報が含まれています。

    この関数により、現在の作業ディレクトリにある mymagicexcelClientForProductionServer という名前のフォルダー内に以下のファイルが生成されます。

    • includedSupportPackages.txt — アセンブリに含まれるすべてのサポート ファイルをリストしたテキスト ファイル。

    • mymagic.bas — VBA プロジェクトにインポートできる VBA モジュール ファイル。

    • mymagic.dll — Excel アドインに必要なダイナミック ライブラリ。

    • mymagic.reg — 未解決のシンボルに関する情報が含まれるテキスト ファイル。

    • mymagic.xla — Excel に直接インストールできる Excel アドイン。

    • mymagicClass.cs — 未解決のシンボルに関する情報が含まれるテキスト ファイル。

    • mccExcludedFiles.log — アプリケーションに含まれていないすべてのツールボックス関数のリストが含まれるログ ファイル。サポートされていない関数の詳細については、MATLAB Compiler の制限を参照してください。

    • readme.txt — パッケージ化およびデプロイの情報が含まれるテキスト ファイル。

    • requiredMCRProducts.txtMATLAB Runtime がアプリケーションを実行するために必要な製品の製品 ID が含まれるテキスト ファイル。

    メモ

    生成された Excel アドインには MATLAB Runtime またはインストーラーが含まれていません。buildResults オブジェクトを使用してインストーラーを作成するには、compiler.package.excelClientForProductionServer を参照してください。

mcc を使用した Excel 統合に対応するデプロイ可能なアーカイブの作成

次のコマンドを実行することで、関数 mcc を使用してデプロイ可能なアーカイブを作成することもできます。

  1. mcc -W CTF:mymagic -U -d '[Target server directory]' -v [directory containing mymagic.m] 

  2. mcc -W 'mpsxl:mymagic,Class1,version=1.0' -b -d '[Target client directory]' -v [Location of mymagic.m] class{Class1:[location of mymagic.m]} 

    メモ

    生成された Excel アドインには MATLAB Runtime またはインストーラーが含まれていません。インストーラーを作成するには、compiler.package.excelClientForProductionServer を参照してください。

Excel 統合に対応したデプロイ可能なアーカイブのサーバーへのインストール

Excel でアドインを使用するには、その前にアーカイブを MATLAB Production Server インスタンスにデプロイしなければなりません。

デプロイ可能なアーカイブをサーバー インスタンスにインストールするには、次を行います。

  1. アーカイブを見つけます。Production Server コンパイラを使用してそれを作成した場合は for_redistribution_files_only\server\ フォルダー、関数 compiler.build.productionServerArchive を使用した場合は mymagicproductionServerArchive フォルダーにあります。

    この例でのファイル名は mymagic.ctf です。

  2. アーカイブ ファイルをサーバー インスタンスの auto_deploy フォルダーにコピーします。サーバー インスタンスがこれを自動的にデプロイし、対象のクライアントからの使用を可能にします。

Excel アドインのクライアントへのインストール

  1. Production Server コンパイラを使用してデプロイ可能なアーカイブを作成する場合は、for_redistribution_files_only\client\ フォルダーでインストーラーを見つけます。ここでは mymagicClientInstl.exe という名前です。関数 compiler.build.productionServerArchive を使用する場合は、結果に対して compiler.package.excelClientForProductionServer を実行してインストーラーを生成します。mymagicinstaller フォルダーに生成されます。ここでは MyAppInstaller.exe という名前です。mcc を使用する場合は、ターゲット ディレクトリにファイルが含まれます。

  2. インストーラーを開き、その指示に従います。Production Server コンパイラを使用するか compiler.package.excelClientForProductionServer を使用するかによって、インターフェイスが異なることに注意してください。

詳細については、MATLAB Production Serverを参照してください。

参考

|