2

所以我有一个 m 文件,我使用 Matlab 编译器以 C dll 形式编译。注意编译的 dll 文件最初是一个名为 'matFunction.m' 的 matlab 文件。现在我想从我的 matlab 代码中运行这个 dll。_我正在做以下事情

loadlibrary compiledDLL.dll compiledDLL.h
calllib('compiledDLL','matfunction')

但我收到的错误是

Error using calllib
Method not found

我也用过

 loadlibrary compiledDLL.dll compiledDLL.h
 calllib('compiledDLL','matfunction.m')

但我遇到了同样的错误。有人可以告诉我我做错了什么,以及我如何在我的 matlab 代码中运行这个 dll。

4

1 回答 1

0

loadlibrary是一个函数。正确的语法是

loadlibrary(dll,hfile)

根据文档。

该文档还明确声明如果库已加载到内存中,则不要调用该函数。您可以使用

tf = libisloaded(libname)

测试库是否已经加载到内存中。

此外,在使用 时calllib,请确保您也为函数传递了正确的参数:

[x1,...,xN] = calllib(libname,funcname,arg1,...,argN)
于 2012-10-11T22:25:40.730 回答