Группируйте развертываемый COM-компонент

Дополнение и регистрация 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 улей, это не отобразится к Windows Vista™ или Windows® 7 пользователей, запускающихся как administrator в системах с контролем учётных записей (User Access Control) включен.

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

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

  1. Не укажите компонент с этой командой:

    mwregsvr /u /useronly my_dll.dll
    

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

    mwregsvr my_dll.dll