How to open External Program by MATLAB?

39 views (last 30 days)
I want to open an external program named Maxsurf Modeler using MATLAB.
Initilially, I was using system command to open the software as follows-
system('"C:\Program Files\Bentley\Offshore\MAXSURF CONNECT Edition V23\MaxsurfModeler64.exe"')
But the problem of this method is, the code executation does not proceed further unless the program is closed.
How can I open this software and continue the execution of susequent codes?

Accepted Answer

Walter Roberson
Walter Roberson on 6 Oct 2022
system('"C:\Program Files\Bentley\Offshore\MAXSURF CONNECT Edition V23\MaxsurfModeler64.exe" &');
That is, if you put an & at the end of your command, the MATLAB itself will detect that and cause the program to be run in the background.
I emphasized that it is MATLAB itself doing that because system() specifically documents that it will happen. The alternative would potentially be that MATLAB might have relied upon the system command shell's background-job facilities.
As you appear to be using MS Windows, an alternative approach would be to use System.Diagonstics.Process which is a .NET facility. See https://www.mathworks.com/matlabcentral/answers/583955-get-the-status-using-system-command-when-program-has-been-closed#answer_485480
  3 Comments
Walter Roberson
Walter Roberson on 7 Oct 2022
If you use the & at the end of the system() command, then to close Maxsurf you will need to system() a taskkill command.
If you use something like
Exe_Process = System.Diagnostics.Process;
Exe_Process.StartInfo.Arguments = '-example arguments';
Exe_Process.StartInfo.FileName = 'C:\program.exe' % full file path
Exe_Process.Start();
then you could use
Exe_Process.Close();
I am not sure if you need to also
Exe_Process.Dispose();
afterwards.
Rounak Saha Niloy
Rounak Saha Niloy on 10 Oct 2022
Can you help me on using taskkill? I am unable to close the software using taskkill.

Sign in to comment.

More Answers (0)

Categories

Find more on C Shared Library Integration in Help Center and File Exchange

Products


Release

R2022b

Community Treasure Hunt

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

Start Hunting!