How to Quit MATLAB using C# & COM?
Afficher commentaires plus anciens
I have a C# program that invokes a new dedicated Matlab instance as follows:
Type mlt = Type.GetTypeFromProgID("Matlab.Application.Single");
MLApp.MLApp ml = (MLApp.MLApp)Activator.CreateInstance(mlt);
However, I am unable to get the Matlab instance to quit. I have tried ml.Quit();, but the instance remains running. I have also tried ml.Execute("quit");, but I get a .NET error. Is there another way or more I need to do to get Matlab to quit?
Réponse acceptée
Plus de réponses (3)
Fangjun Jiang
le 9 Août 2011
Here is what I found in the document. I couldn't test it though whether ml.Quit works or not.
ml.Quit
ml.delete
Example — Calling MATLAB from a C# Client
This example creates data in the client C# program and passes it to MATLAB. The matrix (containing complex data) is then passed back to the C# program.The reference to the MATLAB Type Library for C# is:
MLApp.MLAppClass matlab = new MLApp.MLAppClass();
Here is the complete example:
using System;
namespace ConsoleApplication4
{
class Class1
{
[STAThread]
static void Main(string[] args)
{
MLApp.MLAppClass matlab = new MLApp.MLAppClass();
System.Array pr = new double[4];
pr.SetValue(11,0);
pr.SetValue(12,1);
pr.SetValue(13,2);
pr.SetValue(14,3);
System.Array pi = new double[4];
pi.SetValue(1,0);
pi.SetValue(2,1);
pi.SetValue(3,2);
pi.SetValue(4,3);
matlab.PutFullMatrix("a", "base", pr, pi);
System.Array prresult = new double[4];
System.Array piresult = new double[4];
matlab.GetFullMatrix("a", "base", ref prresult, ref piresult);
}
}
}
1 commentaire
Shawn
le 9 Août 2011
Moe
le 18 Sep 2012
0 votes
I use:
public static MLApp.MLApp matlab;
matlab = new MLApp.MLApp();
matlab.Execute("exit");
Andrea Di Domenico
le 18 Juin 2013
I use this code:
try
{
matlab.Execute("quit");
}
catch (Exception ex)
{
}
It is not so clean but it works
Catégories
En savoir plus sur MATLAB Compiler SDK dans Centre d'aide et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!