Using the Matlab C++ Engine SDK to connect to matlab from within library built with the c++ clibgen workflow

4 次查看(过去 30 天)
Hello All,
I have a library written in c++ (dll on windows) that I use with the clib generation workflow to create a clib interface to the library.
This works good - but lacks some things (namely printing to the matlab console when running functions).
I started to use the matlab C++ Engine sdk inside the dll library. (using the matlab sdk headers). And I during testing - I am unable to connect to a shared matlab instance. it gives an error ("unable to connect to matlab session") when calling
auto matlabEngine = matlab::engine::connectMATLAB(u"MATLAB_27404");
Using the python engine sdk I can connect to the same instance just fine.
I suspect that it might be because I am trying to connect from within a dll that is bound to the matlab instance I am trying to connect to (via the clib interface).
Is there a known way to do this without some sort of proxy application etc?
Thanks in advance for any Tips/Help,
-Trevor

回答(1 个)

Divyanshu
Divyanshu 2024-3-5
Hi Trevor,
You can refer the following documentation which explains about how to call MATLAB from C++ and exchange the data between MATLAB and C++ programs:
Additionally, you can refer the following MATLAB Answer thread specifically for the issue of not being able to connect to existing shared MATLAB session:

类别

Help CenterFile Exchange 中查找有关 Deploy to C++ Applications Using MATLAB Data API (C++11) 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by