外部インタフェース/API | ![]() ![]() |
MATLAB ActiveX Automation Serverのサポート
Microsoft Windows版のMATLABは、ActiveX Automation server機能をサポートします。Automationは、アプリケーションまたはコンポーネント(コントローラ )が他のアプリケーションまたはコンポーネント(サーバ )を制御することができるActiveXプロトコルです。そのため、MATLABは、Automation Controllerになりうる任意のWindowsプログラムによって起動され、制御されることが可能です。Automation Controllerになりうるアプリケーションの例は、Microsoft Excel, Microsoft Access, Microsoft Projectおよび多くのVisual BasicおよびVisual C++プログラムです。Automationを使って、MATLABコマンドを実行し、MATLABワークスペースとmxArray
とのやり取りが可能です。
MATLABをオートメーションサーバとして使うためには、つぎのステップ1および2を使います。
コントローラのドキュメントのActiveX Automationサーバの呼び出し方法を参照します。レジストリ内にあるMATLAB ActiveXオブジェクト名は、Matlab.Application
です。MATLABサーバを呼び出す方法は、選択するコントローラにより異なりますが、すべてのコントローラでサーバを識別するためにこの名前が必要です。
MATLABのActiveX Automationインタフェースは、複数のメソッドをサポートします。以下は、MATLAB Automation
Execute
メソッドを呼び出し、Microsoft Excelまたは任意のVisual BasicまたはVisual Basic for Applications (VBA)イネーブルなアプリケーションにおいて機能するVisual Basicのコードの一部です。Execute
メソッドは、コマンド文字列を引数として受け取り、結果を文字列として出力します。コマンド文字列は、通常、コマンドウィンドウにタイプされる任意のコマンドでかまいません。結果には、コマンドウィンドウに文字列を実行した結果として表示された、エラーを含む出力が含まれます。
Dim MatLab As Object Dim Result As String Set MatLab = CreateObject("Matlab.Application") Result = MatLab.Execute("surf(peaks)")
![]() | MATLABをオートメーションクライアントとして利用 | MATLAB ActiveX Automationメソッド | ![]() |