I´m working on a project, where a C# process interacts with Matlab via COM. I start the Matlab command window like this:
Type matlabApp = Type.GetTypeFromProgID("Matlab.Application");
matlab = Activator.CreateInstance(matlabApp); %//late binding
It´s working fine so far.
But when I run my application twice, I still only get one Matlab command window where both C# processes share a common workspace which yields in different problems in my application (e.g. race conditions as each process can also change the other´s Matlab variables).
How can i force each process to open its own Matlab command window with its own workspace?

 Akzeptierte Antwort

jb179
jb179 am 2 Dez. 2019
Bearbeitet: jb179 am 2 Dez. 2019

1 Stimme

Got it!
Thanks to the MathWorks support!
I just fixed the problem with this simple supplement:
Type matlabApp = Type.GetTypeFromProgID("Matlab.Application.Single");
matlab = Activator.CreateInstance(matlabApp);
The ".Single" achieved, that the command window will be opened for every single Application.

Weitere Antworten (0)

Kategorien

Mehr zu MATLAB finden Sie in Hilfe-Center und File Exchange

Gefragt:

am 18 Nov. 2019

Bearbeitet:

am 2 Dez. 2019

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by