question for using MATLAB Compiler (mc) for Undefined function

1 次查看(过去 30 天)
I created a .m file that is used to generate subsystem for my simulink model. I want to use it in cmd, so that i compiled it by using
mcc -m myprogram.m
it generate a myprogram.exe file I run this file but it returns error
??? Undefined function or method 'open_system' for input arguments of type 'char'.
my program.m
function convert2subsys(sys)
open_system(sys);
blocks = find_system(sys, 'SearchDepth', 1);
bh = [];
% for i = 2:length(blocks)
bh = [bh get_param(blocks{2}, 'handle')];
% end
Simulink.BlockDiagram.createSubSystem(bh);
end
Please help. I am using matlab 2010(a); btw, should i use the matlab coder rather then matlab compiler?

回答(1 个)

Friedrich
Friedrich 2011-7-12
Hi,
the Simulink Products are not made for compiling:
Maybe consider calling MATLAB with the -r option in order to run you program from the cmd
  5 个评论
Kaustubha Govind
Kaustubha Govind 2011-7-12
You can use close_system with the save flag parameter:
close_system('mymodel', 0); % close without saving
(or)
close_system('mymodel', 1); % close after saving
This will prevent the save dialog from popping up.
yizhan
yizhan 2011-7-13
Thank you guys, it works now. The simulink process is been done invisibly.
There is only one window opening... which is the "matlab command window" is there a way to close it? I mean in batch file.
I have tried taskkill, but is will prevent the matlab file running.

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Programmatic Model Editing 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by