COM interface to open Matlab from another software

조회 수: 1 (최근 30일)
NF
NF 2018년 4월 11일
댓글: NF 2018년 4월 20일
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
Guillaume
Guillaume 2018년 4월 20일
편집: Guillaume 2018년 4월 20일

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 2018년 4월 20일
In the end I solved everything calling Plant Simulation from Matlab, it is way simplier. However, thank you a lot for the help!!

댓글을 달려면 로그인하십시오.

답변 (0개)

카테고리

Help CenterFile Exchange에서 Use COM Objects in MATLAB에 대해 자세히 알아보기

태그

제품

Community Treasure Hunt

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

Start Hunting!

Translated by