exponenta event banner

Интеграция надстройки и COM-компонента с Microsoft Excel

Основные задачи конечного пользователя Microsoft Excel

ЗадачаСсылка
Убедитесь, что вы получили все необходимые файлы от программиста MATLAB ®.Файлы, необходимые для развертывания
Проверьте разрешения реестра для файла надстройки и связанного компонента.Регистрация надстроек и COM-компонентов
Выполните созданные функции и создайте макросы.Выполнение функций и создание макросов
Установите среду выполнения MATLAB в целевые системы и обновите пути к системе.Среда выполнения MATLAB
Используйте надстройку Excel.Установка и распространение надстроек

Файлы, необходимые для развертывания

Перед началом убедитесь, что у вас есть доступ к следующим файлам:

  • Установщик MCR. Для размещения всех установщиков среды выполнения MATLAB выполните команду mcrinstaller.

  • .xla файл (надстройка)

  • .bas файл (сгенерированный код VBA)

  • .dll файл

  • readme.txt

Регистрация надстроек и COM-компонентов

Примечание

COM-компоненты используются как в MATLAB Compiler™, так и в MATLAB Compiler SDK™, поэтому некоторые инструкции, относящиеся к построению и упаковке COM-компонентов и надстроек, могут быть разделены между продуктами.

При создании COM-компонента он регистрируется в HKEY_LOCAL_MACHINE или HKEY_CURRENT_USER, на основе ваших прав входа в систему.

Если необходимо изменить разрешения на выполнение в соответствии со стандартами безопасности, установленными Microsoft ® или установкой, можно выполнить одно из следующих действий перед развертыванием COM-компонента или надстройки:

  • Войти в систему как administrator перед запуском COM-компонента или надстройки

  • Выполните следующие действия mwregsvr перед запуском COM-компонента или надстройки выполните следующую команду:

    mwregsvr [/u] [/s] [/useronly] project_name.dll 
    где:

    • /u позволяет любому пользователю отменить регистрацию COM-компонента или надстройки для этого сервера

    • /s выполняет эту команду бесшумно, не генерируя сообщений. Это полезно для использования в автоматических установках.

    • /useronly позволяет запускать COM-компонент или надстройку на этом сервере только вошедшему в систему пользователю

Внимание

Если COM-компонент зарегистрирован в USER hive, он не будет виден пользователям Windows Vista™ или Windows ® 7, работающим какadministrator в системах с включенным управлением доступом пользователя (UAC).

При регистрации компонента в USER hive в Windows 7 или Windows Vista, COM-компонент может не загружаться при запуске с повышенными правами (administrator) привилегий.

Если это происходит, выполните следующие действия для повторной регистрации компонента в LOCAL MACHINE улей:

  1. Отмените регистрацию компонента с помощью следующей команды:

    mwregsvr /u /useronly my_dll.dll
    

  2. Перерегистрируйте компонент в LOCAL MACHINE куст с этой командой:

    mwregsvr my_dll.dll

Включение COM-компонента в Microsoft Excel с помощью мастера функций

После создания надстройки и COM-компонента используйте мастер функций для интеграции COM-компонента в Microsoft Excel ®.

Полный пример выполнения функций и создания макросов см. в разделах Выполнение функций и Создание макросов на примере магического квадрата в этой главе.

Среда выполнения MATLAB

MATLAB Runtime - это механизм выполнения, состоящий из тех же общих библиотек, которые MATLAB использует для выполнения файлов MATLAB в системах без установленной версии MATLAB.

Среда выполнения MATLAB доступна для загрузки из Интернета, чтобы упростить распространение приложений, созданных с помощью компилятора MATLAB или SDK компилятора MATLAB. Загрузите среду выполнения MATLAB со страницы продукта MATLAB Runtime или используйте compiler.runtime.download Функция MATLAB.

Программа установки среды выполнения MATLAB выполняет следующие действия:

  1. Установите среду выполнения MATLAB.

  2. Установите сборку компонента в папку, из которой запускается программа установки.

  3. Копировать MWArray в глобальный кэш сборок (GAC).

Предварительные условия выполнения MATLAB

  1. Для запуска программы установки среды выполнения MATLAB требуются права администратора.

  2. Версия MATLAB Runtime, запускающая приложение на целевом компьютере, должна совпадать с версией MATLAB Compiler или MATLAB Compiler SDK, построившей развернутый код, на том же уровне обновления или более поздней версии.

  3. Не устанавливайте среду выполнения MATLAB в каталоги установки MATLAB.

  4. Программе установки среды выполнения MATLAB требуется приблизительно 2 ГБ дискового пространства.

Добавление установщика среды выполнения MATLAB в установщик

В этом примере показано, как включить среду выполнения MATLAB в созданную программу установки с помощью одного из приложений компилятора. Созданная программа установки содержит все файлы, необходимые для запуска автономного приложения или общей библиотеки, построенной с помощью MATLAB Compiler или MATLAB Compiler SDK, и правильно размещает их в целевой системе.

  1. В разделе «Параметры упаковки» интерфейса компилятора выберите один или оба из следующих параметров:

    • Среда выполнения, загруженная из Интернета - этот параметр создает программу установки, которая загружает программу установки MATLAB Runtime с веб-сайта MathWorks.

    • Среда выполнения, включенная в пакет - параметр включает программу установки MATLAB Runtime в созданную программу установки.

  2. Щелкните Пакет (Package).

  3. Распространение программы установки среди конечных пользователей.

Установка среды выполнения MATLAB

Инструкции по установке среды выполнения MATLAB в системе см. в разделе Установка и настройка среды выполнения MATLAB.

При наличии программы установки, содержащей скомпилированные артефакты, среда выполнения MATLAB устанавливается вместе с приложением или общей библиотекой. Если предоставлены только необработанные двоичные файлы, необходимо загрузить и запустить программу установки MATLAB Runtime.

Примечание

В Windows пути устанавливаются установщиком автоматически. Если вы работаете на платформе, отличной от Windows, необходимо либо изменить путь на конечном компьютере, либо использовать сценарий оболочки для запуска скомпилированного приложения. Установка путей позволяет исполняемому файлу приложения находить среду выполнения MATLAB. Дополнительные сведения об установке пути см. в разделе Установка пути времени выполнения MATLAB для развертывания во время выполнения.

Где найти API MWArray

Среда выполнения MATLAB также включает MWArray.dll, который содержит API для обмена данными между приложениями и средой выполнения MATLAB. Документацию по этому API можно найти в Help папки установки.

На целевых компьютерах, на которых запущен установщик среды выполнения MATLAB, устанавливается MWArray сборка в <MATLAB_RUNTIME_INSTALL_DIR>\toolbox\dotnetbuilder\bin\<ARCH>\<FRAMEWORK_VERSION>.

Образец структуры каталогов среды выполнения MATLAB, включая MWArray.dll

Установка и распространение надстроек

Поскольку надстройки Microsoft Excel записываются непосредственно в distrib в папке компилятора MATLAB вы и ваши конечные пользователи устанавливаете их точно так же, как вы установили мастер функций в окне Установка мастера функций.

Вызов кода надстройки из электронной таблицы Excel

Чтобы запустить исполняемый код из ячейки электронной таблицы Excel, вызовите имя надстройки с помощью вызова метода. Например, при развертывании части кода MATLAB с именем mymagic.mили фигура с именем mymagic.fig, этот код вызывается путем ввода следующего в ячейку электронной таблицы:

=mymagic()

Совет

Если вызов метода выполняется не сразу, одновременно нажмите клавиши Ctrl, Shift и Enter.