3

Mathematicaでノートブックを開き、「nb = NotebookCreate []」と入力すると、期待どおりに新しいノートブックウィンドウが作成されます。

ただし、C#内から同じコマンドを実行しようとすると失敗し、新しいノートブックウィンドウが開きません。

IKernelLink ml = MathLinkFactory.CreateKernelLink();
ml.WaitAndDiscardAnswer();
string cmd = @"nb = NotebookCreate[]";
string result = ml.EvaluateToOutputForm(cmd, 0);

// result is now "$Failed".

「2+2」を渡すと「4」が返されることに注意してください。これは、Mathematicaカーネルへのリンクが完全に機能していることを証明しています。

4

1 に答える 1

0

残念ながら、これは Mathematica v8 では不可能のようです (v9 ではあまり変わっていないと思います)。

私が理解していることから、C# から Mathematica カーネルにアクセスすると、GUI の一部である Notebook クラスへのアクセスが許可されません。

于 2013-01-28T12:05:13.607 に答える