The loadlibrary функция в MATLAB® позволяет загружать общую библиотеку в MATLAB.
Загрузка библиотек с использованием заголовочных файлов не поддерживается в скомпилированных приложениях. Поэтому создать приложение, которое использует loadlibrary функция с заголовочным файлом, выполните следующие шаги:
Создайте файл MATLAB прототипа. Предположим, что вы звоните loadlibrary со следующим синтаксисом.
loadlibrary(library, header)
Выполните следующую команду в MATLAB только один раз, чтобы создать файл прототипа:
loadlibrary(library, header, 'mfilename', 'mylibrarymfile');
mylibrarymfile.m в текущей папке. Если вы находитесь в Windows®, другой файл с именем library_thunk_pcwin64.dll также создается в текущей папке.Измените вызов на loadlibrary в MATLAB:
loadlibrary(library, @mylibrarymfile)
Скомпилируйте и разверните приложение.
Если вы интегрируете библиотеку в развернутое приложение, укажите .dll библиотеки наряду с library_thunk_pcwin64.dll, если создан, с помощью -a опция mcc команда. Если вы используете приложения Application Compiler или Library Compiler, добавьте .dll файлы в Files required for your application to run раздел приложения.
Если вы предоставляете библиотеку как внешний файл, который не интегрирован с развернутым приложением, поместите библиотеку .dll файл в той же папке, что и скомпилированное приложение. Если вы находитесь в Windows, необходимо интегрировать library_thunk_pcwin64.dll в ваше скомпилированное приложение.
Преимущество этого подхода заключается в том, что библиотеку можно заменить обновленной версией без перекомпиляции развернутого приложения. Замена библиотеки на другую версию работает только в том случае, если сигнатуры функции в библиотеке не изменены. Это потому, что и mylibrarymfile.mlibrary_thunk_pcwin64.dll привязаны к сигнатурам функций в библиотеке.
Примечание
Вы не можете использовать loadlibrary в MATLAB для загрузки общей библиотеки, созданной с MATLAB. Для получения дополнительной информации о loadlibrary, см. «Ограничения на поддержку общих библиотек».
Примечание
Операционные системы имеют loadlibrary функция, которая загружает указанный модуль операционной системы Windows в адресное пространство вызова процесса.