com4:Class
Especifica as propriedades de um CLSID registradas pelo pacote que podem ser compartilhadas por um ou mais registros concretos do CLSID para contextos de classe diferentes. Por exemplo, considere um ExeServer que dá suporte à ativação fora do processo (CLSCTX_LOCAL_SERVER) e a um manipulador em processo correspondente (CLSCTX_INPROC_HANDLER). Por si só, o elemento
Hierarquia de elementos
aplicativos <>
extensões de <>
<com4:Class>
extensões de <>
<com4:Class>
Sintaxe
<com4:Class
ProgId = 'An alphanumeric string separated by a period with a value between 1 and 255 characters in length (for example, Foo.Bar or Foo.Bar.1).'
VersionIndependentProgId = 'An alphanumeric string separated by a period with a value between 1 and 255 characters in length (for example, Foo.Bar or Foo.Bar.1).'
AutoConvertTo = 'A GUID in the form xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.'
InsertableObject = 'A boolean value.'
ShortDisplayName = 'A string with a value between 1 and 40 characters in length.'
Id = 'A GUID in the form xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.'
DisplayName = 'A string with a value between 1 and 256 characters in length. This string is localizable.' >
<!-- Child elements -->
ImplementedCategories
Conversion
DataFormats
MiscStatus
Verbs
DefaultIcon
ToolboxBitmap32
TypeLib
</com4:Class>
Atributos e elementos
Atributos
Atributo | Descrição | Tipo de dado | Necessário | Valor padrão |
---|---|---|---|---|
progId |
Associa um ProgID (identificador programático) a um CLSID. | Uma cadeia de caracteres alfanumérica separada por um período com um valor entre 1 e 255 caracteres de comprimento (por exemplo, Foo.Bar ou Foo.Bar.1). | Não | |
VersionIndependentProgId | Associa um ProgID a um CLSID. Esse valor é usado para determinar a versão mais recente de um aplicativo de objeto. | Uma cadeia de caracteres alfanumérica separada por um período com um valor entre 1 e 255 caracteres de comprimento (por exemplo, Foo.Bar ou Foo.Bar.1). | Não | |
AutoConvertTo | Especifica a conversão automática de uma determinada classe de objetos em uma nova classe de objetos. | Um GUID no formato xxxxxxxxx-xxxx-xxxx-xxxx-xxxx-xxxxxxxx. | Não | |
InsertableObject | Indica que essa classe é inserível. | Um valor booliano. | Não | |
ShortDisplayName | Uma versão curta do nome de exibição da classe. | Uma cadeia de caracteres com um valor entre 1 e 40 caracteres de comprimento. | Não | |
ID | O atributo ID corresponde ao CLSID (HKCR\CLSID{MyGuid}). | Um GUID no formato xxxxxxxxx-xxxx-xxxx-xxxx-xxxx-xxxxxxxx. | Sim | |
DisplayName | O nome de exibição da classe. | Uma cadeia de caracteres com um valor entre 1 e 256 caracteres de comprimento. Essa cadeia de caracteres é localizável. | Não |
Elementos filho
Elemento filho | Descrição |
---|---|
|
Especifica categorias implementadas pela classe. |
de Conversão de |
Especifica os formatos que um aplicativo pode ler e gravar. |
DataFormats | Especifica os formatos de dados padrão e principais compatíveis com um aplicativo. |
MiscStatus | Especifica como criar e exibir um objeto. |
verbos | Especifica os verbos a serem registrados para um aplicativo. |
DefaultIcon | Fornece informações de ícone padrão para apresentações icônicas de objetos. |
|
Identifica o nome do módulo e a ID do recurso para um bitmap de 16 x 16 bits a ser usado para a face de uma barra de ferramentas ou botão de caixa de ferramentas. |
TypeLib | Uma biblioteca de tipos para uma classe ou interface. |
Elementos pai
Elemento pai | Descrição |
---|---|
extensões | Define um ou mais pontos de extensibilidade para o aplicativo. |
Observações
O de chave CLSID no layout do registro COM dá suporte a duas categorias de informações de registro para um CLSID:
- Detalhes da ativação para um contexto de classe específico. Por exemplo, uma subchave localServer32
para ativação de outofproc (CLSCTX_LOCAL_SERVER), uma subchave InprocHandler32 para ativação de um manipulador inproc (CLSCTX_INPROC_HANDLER) ou uma subchave InprocServer32 para ativação inproc (CLSCTX_INPROC_SERVER). O mesmo CLSID pode ter registros para qualquer combinação desses contextos de classe e os detalhes de ativação de cada um deles são especificados independentemente nas subchaves correspondentes. - Informações sobre o CLSID que é compartilhado entre contextos de classe. Por exemplo, as propriedades de um servidor OLE usadas em cenários OLE, o conjunto de categorias de componente implementadas pelo CLSID, etc., são fornecidas por meio de outras subchaves da chave CLSID e, se os detalhes de ativação forem fornecidos para vários contextos de classe, essas propriedades serão associadas semanticamente ao CLSID, não a um contexto de classe específico.
Os atributos de um elemento de com4:Class de nível superior correspondem às informações em uma chave CLSID compartilhada entre contextos de classe. Se um pacote der suporte à ativação de um CLSID para um contexto de classe única, o uso do elemento classe
- As propriedades compartilhadas devem ser fornecidas como atributos de um elemento de classe de nível superior.
- Os detalhes de ativação de contexto por classe devem ser fornecidos em elementos ClassReference aninhados, por exemplo,
class ClassReference e InProcessHandlerClass ClassReference para um CLSID que dá suporte à ativação outofproc e a um manipulador inproc. O atributo ID do elemento ClassReference faz referência ao elemento Class de nível superior que contém as propriedades compartilhadas.
Exemplo
<com4:Extension Category="windows.comServer">
...
<!-- Example of a CLSID that has both aan inproc server and an exe server implementation, using top level Claass and ClassReference -->
<com4:Class Id="10000000-0000-0000-0000-000000000009" DisplayName="CLSID_FOO3"/>
<com4:ExeServer Executable="MyServer.exe" DisplayName="My Server">
<com4:ClassReference Id="10000000-0000-0000-0000-000000000009" />
</com4:ExeServer>
<com4:InProcessServer Path="MyServer.dll">
<com4:ClassReference Id="10000000-0000-0000-0000-000000000009" ThreadingModel="Both"/>
</com4:InProcessServer>
...
</com4:Extension>
Requisitos
Item | Valor |
---|---|
namespace | http://schemas.microsoft.com/appx/manifest/com/windows10/4 |
versão mínima do sistema operacional | Windows 10 (Build 20348) |