Compartilhar via


Informações do Registro de Controles ActiveX

Há várias entradas e sinalizadores do Registro que são usados. Além disso, os controles podem dar suporte a categorias de componentes para classificar os recursos que eles fornecem.

As chaves do Registro relacionadas aos controles são marcadas com um asterisco na seguinte árvore:

HKEY_CLASSES_ROOT
   CLSID
      {control_CLSID}
         ProgID = <identifier>
         InprocServer32 = <filename>.dll
         *DefaultIcon = <filename>.<ext>,resourceID
         *ToolboxBitmap32 = <filename>.<ext>,resourceID
         *Control
         verb
            *n = &Properties...
         *MiscStatus = 0
         TypeLib = {object_typelibID}
         *Version = version_number

A entrada DefaultIcon é usada para identificar um ícone a ser exibido quando o controle é minimizado para um ícone. A função ExtractIcon é usada para obter o ícone do arquivo .DLL ou .EXE especificado.

A entrada ToolboxBitmap32 identifica o nome do módulo e o identificador de recurso para um bitmap 16*15 a ser usado para a face de um botão de caixa de ferramentas ou barra de ferramentas. O tamanho do ícone padrão do Windows é muito grande para ser usado para essa finalidade. Essa entrada dá suporte especificamente a contêineres de controle que têm um modo de design no qual se seleciona controles e os coloca em um formulário que está sendo projetado. Por exemplo, no Visual Basic, o ícone do controle é exibido na caixa de ferramentas do Visual Basic durante o modo de design.

A entrada de Controle de marca um objeto como um controle. Essa entrada geralmente é usada por contêineres para preencher caixas de diálogo. O contêiner usa essa sub-chave para determinar se um objeto deve ser incluído em uma caixa de diálogo que exibe controles.

O inserivel sub-chave também pode ser usado com controles, dependendo se o objeto pode atuar apenas como um objeto inserido no local sem recursos de controle especiais. Objetos marcados com inseriveis aparecem na caixa de diálogo Inserir Objeto de seu contêiner. A entrada de inserível geralmente significa que o controle foi testado com contêineres sem controle.

As inseriveis e as subchaves de controle de são opcionais. Um controle pode omitir a sub-chave inserível se não tiver sido projetado para funcionar com contêineres mais antigos que não entendem os controles. Um controle pode omitir a chave de controle de se ela for projetada apenas para funcionar com um contêiner específico e, portanto, não desejar ser inserida em outros contêineres.

Os controles devem ter um Propertiesverb, OLEIVERB_PROPERTIES, juntamente com qualquer outro verbo que eles dão suporte. O Propertiesverb, bem como o OLEIVERB_PRIMARY padrão verb , instrui o controle a exibir sua folha de propriedades. O Propertiesverb item é exibido como o Properties item no menu do contêiner quando o controle está ativo. Dessa forma, o controle pode exibir sua própria página de propriedades, permitindo alguma funcionalidade útil para o usuário final, mesmo que o contêiner não lide com controles.

Um controle define a chave MiscStatus para se descrever para contêineres potenciais. Os bits assumem os valores de OLEMISC e os controles adicionam vários valores a essa enumeração. Consulte os valores de enumeração OLEMISC para obter mais informações. O cliente pode obter essas informações chamando IOleObject::GetMiscStatus sem precisar criar uma instância do controle primeiro.

Por fim, versão descreve a versão do controle que deve corresponder à versão da biblioteca de tipos associada a esse controle.

Também nas informações de tipo de um controle, o controle de atributo marca uma entrada de coclasse como descrevendo um controle.