Поделиться через


Активация. Команды

В этой статье описаны основные и вторичные команды роли в активации OLE.

Как правило, дважды щелкнув внедренный элемент, пользователь может изменить его. Однако некоторые элементы не ведут себя таким образом. Например, дважды щелкнув элемент, созданный с помощью приложения звукозаписи, не открывает сервер в отдельном окне; вместо этого он воспроизводит звук.

Причина в этом поведении заключается в том, что элементы звукозаписи имеют другую "основную команду". Основная команда — это действие, выполняемое, когда пользователь дважды щелкает элемент OLE. Для большинства типов элементов OLE основной командой является Edit, которая запускает сервер, создавший элемент. Для некоторых типов элементов, таких как элементы звукозаписи, основная команда — Play.

Многие типы элементов OLE поддерживают только одну команду, и изменение является наиболее распространенным. Однако некоторые типы элементов поддерживают несколько команд. Например, элементы звукозаписи поддерживают изменение в качестве вторичной команды.

Другая глагол часто используется в формате Open. Команда Open идентична правке, за исключением того, что серверное приложение запускается в отдельном окне. Эта команда должна использоваться, если приложение контейнера или серверное приложение не поддерживает активацию на месте.

Все команды, отличные от основной команды, должны вызываться с помощью команды подменю при выборе элемента. Этот подменю содержит все команды, поддерживаемые элементом, и обычно достигается командой typenameObject в меню "Изменить". Сведения о команде typenameObject см. в статье "Меню и ресурсы: дополнения контейнеров".

Команды, поддерживаемые серверным приложением, перечислены в базе данных регистрации Windows. Если серверное приложение записывается с помощью библиотеки классов Microsoft Foundation, оно автоматически регистрирует все команды при запуске сервера. В противном случае их следует зарегистрировать на этапе инициализации серверного приложения. Дополнительные сведения см. в статье "Регистрация".

См. также

Активация
Контейнеры
Серверы