我有这个共享的lib作为dll文件,我正试图在MATLAB中加载和使用它,它包含输出一些日志的函数,我想在MATLAB命令窗口中显示这个输出。
%MATLAB Code for loading and using the functions
NET.addAssembly('C:UsersUser1DesktopSomeLib.dll');
import Lib.DesiredClass.*;
myFun();%I'm expecting here an output.
我已经做了研究,找到了一种用以下命令在CMD(单独的窗口(中显示输出的方法。
C:UsersUser1>matlab -wait -log
然后在MATLAB中运行相同的代码,我在CMD中得到了所需的输出,但我想在MATLAB命令窗口中显示它。
不能通过写入stdout或stderr来写入MATLAB命令窗口。您需要调用MATLAB API中的mexPrintf
函数才能执行此操作
这意味着DLL中的函数无法写入MATLAB命令窗口,除非您将其明确写入链接到MATLAB库并调用mexPrintf
。
最简单的解决方案是将DLL输出到日志文件。