call matlab (*.m) program from visual studio 2013
조회 수: 7 (최근 30일)
이전 댓글 표시
How can i call matlab (*.m) program from visual studio 2013?
Thanks for the answers!
댓글 수: 0
답변 (3개)
Dhanyatha
2014년 6월 30일
You can utilize a (.m) file in MS Visual Studio in two ways:
1. Compiling the (.m) file using MATLAB Compiler , and then refer to the resulting DLL in your Visual Studio Program
Below is an example of calling "script.m" file in a C++ program using MATLAB Engine.
/* A simple program to illustrate how to call MATLAB Engine functions from a C++ program.*/
using namespace std;
#include "engine.h"
int main()
{
Engine *ep;
/*
* Call engOpen with a NULL string. This starts a MATLAB process
* on the current host using the command "matlab".
*/
if (!(ep = engOpen("")))
{
fprintf(stderr, "\nCan't start MATLAB engine\n");
return EXIT_FAILURE;
}
/*
* Now call the MATLAB script that through MATLAB Engine
*/
engEvalString(ep, "script");
cout << "Hit return to continue\n\n";
fgetc(stdin);
/*
* Close the MATLAB Engine
*/
engClose(ep);
return EXIT_SUCCESS;
}
댓글 수: 1
Ryan Livingston
2014년 6월 30일
3. If you adhere to the MATLAB subset supported for code generation, you could also generate C or C++ code from your MATLAB code using MATLAB Coder and then call that code from your Visual Studio project.
Image Analyst
2014년 5월 4일
I think you'd need to compile it into a mex file with the MATLAB Compiler, and then call it as a DLL from your Visual Studio program. You might be able to use MATLAB Coder - I don't know because I don't have that product.
댓글 수: 0
Ravi Boda
2018년 9월 9일
I have written in visual studio 2013 then how to execute in matlab
댓글 수: 1
Image Analyst
2018년 9월 9일
To have MATLAB execute/launch a program you've created in Visual Studio, use the system() function. Pass in the full file name of the executable you made in Visual Studio into the system() function.
참고 항목
카테고리
Help Center 및 File Exchange에서 Call MATLAB from C에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!