Main Content

MATLAB 関数における import の使用

import コマンドを MATLAB® 関数で使用する場合には、対応する .NET アセンブリをまず追加してから関数を呼び出します。たとえば、次の関数 getPrinterInfo は、System.Drawing 名前空間でメソッドを呼び出します。

function ptr = getPrinterInfo
import System.Drawing.Printing.*;
ptr = PrinterSettings;
end

関数を呼び出すには、以下を入力します。

dotnetenv("framework")
NET.addAssembly('System.Drawing');
printer = getPrinterInfo;

NET.addAssembly('System.Drawing') コマンドを関数 getPrinterInfo に追加しないでください。MATLAB では、NET.addAssembly コマンドを実行する前に getPrinterInfo.m コードを処理します。この場合、PrinterSettings は完全修飾名ではないため MATLAB で名前が認識されません。

同様に、import コマンドのスコープは関数 getPrinterInfo に制限されています。コマンド ラインで以下を入力します。

ptr = PrinterSettings;
Undefined function or variable 'PrinterSettings'.

参考