2008-11-29 101 views
2

我正在編譯一些MATLAB函數到C DLL中。導出的mlf函數返回一個表示函數是否成功的布爾值。當返回值爲false時,我想查找錯誤信息。我找不到辦法做到這一點! (編譯和導出lasterror()函數除外)。MATLAB「C」DLL錯誤

是否有一個C接口來獲取MATLAB運行時生成的最後一個錯誤?

+0

確實找到了解決辦法嗎? – rem7 2009-07-11 00:00:13

+0

我發現的唯一解決方案是編譯和導出一個返回「lasterr()」函數結果的函數。 – 2009-07-12 10:23:01

回答

2

好吧,讓我們嘗試...

mexCallMATLABWithTrap(C和Fortran) - 調用Matlab功能,用戶自定義的M文件或MEX文件和捕獲錯誤信息

#include "mex.h" 

mxArray *mexCallMATLABWithTrap(int nlhs, mxArray *plhs[], int nrhs, const mxArray *prhs[], const char *functionName); 

mexEvalStringWithTrap(C和Fortran) - 在呼叫者的工作區,並捕獲誤差信息執行MATLAB命令

#include "mex.h" 

mxArray *mexEvalStringWithTrap(const char *command); 

這兩件事發現與谷歌和猜測或兩個。對不起,如果這是浪費時間。