COM interface to open Matlab from another software

2 views (last 30 days)
NF
NF on 11 Apr 2018
Commented: NF on 20 Apr 2018
I have to open and run a Matlab program when I call it from another software (Plant Simulation). I found that this has to be done with COM interface, that both supports. However I do not have any idea of how to do this. I found on Plant Simulation context help some command that can be used to control Plant Simulation from other softwares, but not viceversa. Is there a library with the commands that can be used from another software to control Matlab? If not, how can I do it? Thanks in advance
  8 Comments
Guillaume
Guillaume on 20 Apr 2018
Edited: Guillaume on 20 Apr 2018

So to be clear, in your software if you do:

matlab:=createCOMObject("matlab.Application")

you get a window that open and then is probably force-closed by the OS. But if you do:

matlab = actxserver('matlab.Application')

in matlab, the same window that appear stays up? That is very odd, the two should be equivalent.

What about if you use a vb script. Save the following in a text file with extension .vbs

Set matlab = CreateObject("Matlab.Application")
Matlab.Visible = 1

and run this script from Windows command prompt with

cscript nameofscript.vbs

Again, this should pop up the matlab window and not close it. All three are equivalent, they ask Windows to instantiate a matlab COM object.

Note: some antivirus softwares and some configurations of windows may prevent you from running vb scripts.

NF
NF on 20 Apr 2018
In the end I solved everything calling Plant Simulation from Matlab, it is way simplier. However, thank you a lot for the help!!

Sign in to comment.

Answers (0)

Products

Community Treasure Hunt

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

Start Hunting!