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
улей:
Не укажите компонент с этой командой:
mwregsvr /u /useronly my_dll.dll
Повторно укажите компонент к LOCAL MACHINE
улей с этой командой:
mwregsvr my_dll.dll