COM interface to open Matlab from another software
显示 更早的评论
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 个评论
SRT HellKitty
2018-4-11
编辑:SRT HellKitty
2018-4-11
NF
2018-4-11
Guillaume
2018-4-11
But the fact that your other software has a COM interface does not mean that it can itself control matlab. Your other software needs to offer some form of scripting for it to control matlab.
You may find that it may be actually easier to work the other way round with matlab controlling the other software.
NF
2018-4-19
Guillaume
2018-4-19
You normally don't need to use regmatlabserver. Matlab automatically register itself when installed. The only reason to use regmatlabserver is when you have several versions installed and you don't want to use the last one installed.
What happens if in matlab you do:
matlab = actxserver('matlab.Application')
?
This should normally starts a new instance of matlab with a very basic command window instead of the full UI. Is the command window automatically closed as well?
NF
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
2018-4-20
回答(0 个)
类别
在 帮助中心 和 File Exchange 中查找有关 Startup and Shutdown 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!