このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
MATLAB と連携して動作する COM アプリケーションの記述
メモ
MATLAB を COM オートメーション サーバーとして呼び出すアプリケーションを作成する代わりに、.NET 用の MATLAB エンジン API の使用を検討してください。詳細については、.NET からの MATLAB の呼び出しを参照してください。
以下の例を参照してください。
オートメーションは、あるアプリケーション ("コントローラー" または "クライアント") が別のアプリケーション ("サーバー") によってエクスポートされたオブジェクトを制御できるようにする COM プロトコルです。MATLAB は、Microsoft® Windows® オペレーティング システム上の COM オートメーション サーバー機能をサポートしています。オートメーション クライアントとして構成可能な任意の Windows プログラムで MATLAB を制御できます。
COM オートメーション サーバーとして MATLAB を呼び出す、MATLAB R2022a 以前用に作成された既存のコードを維持する必要がある場合は、以下のトピックを参照してください。
C、C/C++ または Fortran を使用してクライアント アプリケーションを作成する場合は、オートメーション サーバーの代わりに MATLAB エンジン アプリケーションを使用します。詳細については、エンジン アプリケーションの選択を参照してください。
MATLAB から COM コンポーネントにアクセスするには、MATLAB の COM オブジェクトの使用を参照してください。
関数
トピック
- COM サーバーとしての MATLAB の登録
MATLAB を COM サーバーとして使用するには、アプリケーションを Windows のレジストリに登録する。
- MATLAB サーバーの作成
サーバーを作成するには、サーバーを識別するプログラム識別子 (ProgID) を使用します。
- MATLAB 型から COM 型への変換
MATLAB による MATLAB 型から COM 型へのデータ変換方法。
- COM 型から MATLAB 型への変換
MATLAB による COM アプリケーションから MATLAB 型へのデータ変換方法。
- C# クライアントからの MATLAB 関数の呼び出し
この例では、MATLAB をオートメーション サーバーとして使用して、ユーザー定義の MATLAB 関数を C# アプリケーションから呼び出す方法を説明します。
- Visual Basic .NET からの MATLAB 関数の呼び出し
この例では、Microsoft Visual Basic® のクライアント アプリケーションから MATLAB 関数を呼び出します。
- C# クライアントから MATLAB への複素数データの受け渡し
この例では、クライアントである C# プログラム内で複素数データを作成し、それを MATLAB に渡します。
トラブルシューティング
他のプログラムから MATLAB 関数を呼び出す場合、プログラムが MATLAB 関数の完了待機中にタイムアウト メッセージを表示する場合があります。