Tabela MsiAssembly

A tabela MsiAssembly especifica as configurações do Windows Installer para assemblies Microsoft .NET Framework e Win32. Para obter mais informações, confira Instalação de assemblies no Cache de Assembly Global e Instalação de assemblies Win32.

No Windows XP, o Windows Installer pode instalar assemblies Win32 como assemblies lado a lado. Para obter mais informações, confira a API de Assembly Lado a Lado.

Windows 2000: não há suporte para esse recurso.

A tabela MsiAssembly tem as colunas a seguir.

Coluna Tipo Chave Nullable
Component_ Identificador S N
Feature_ Identificador N N
File_Manifest Identificador N S
File_Application Identificador N S
Atributos Inteiro N S

 

Colunas

Component_

A chave na tabela Component que especifica o componente do Windows Installer que contém esse assembly.

O valor desse campo não deve ser definido como nulo. O campo KeyPath do componente na tabela Component não deve ser nulo.

Para os assemblies Win32, o componente KeyPath não pode ser o arquivo de manifesto especificado em File_Manifest. O manifesto pode ser o caminho de chave para um assembly .NET Framework ou de política.

Feature_

Chave na tabela Feature.

Quando o assembly precisa ser instalado por uma instalação de recurso, o Windows Installer instala o recurso apontado por esse campo.

File_Manifest

Uma chave externa na tabela File que especifica o arquivo que contém o manifesto de um assembly .NET Framework ou de um assembly Win32.

Para um assembly Win32, não especifique esse arquivo como o arquivo de caminho da chave do componente no campo KeyPath da tabela Component.

File_Application

Para instalar o assembly em um local privado, insira o arquivo de caminho de chave para o componente do assembly nesse campo.

Esse é o valor exibido no campo KeyPath da tabela Component. Em seguida, o Installer poderá instalar o assembly na estrutura de diretório do componente especificado na tabela Directory. Esse campo precisará ser nulo se o assembly for instalado no Cache de Assembly Global.

Attributes

Insira um valor igual a um (1) para um assembly Win32. Insira um valor igual a zero (0) para um assembly .NET Framework.

Se a coluna Attributes for NULL, o Installer tratará o assembly como um assembly .NET Framework.

Comentários

Se houver, pelo menos, uma entrada na tabela MsiAssembly, a tabela InstallExecuteSequence precisará conter a ação MsiPublishAssemblies e a ação MsiUnpublishAssemblies.

Como os assemblies não podem ser revertidos depois de confirmados, o Windows Installer usa um processo de instalação em duas etapas. As interfaces para os assemblies são criadas durante as operações de instalação geradas pela ação MsiPublishAssemblies.

Os assemblies só são confirmados após a execução bem-sucedida da ação InstallFinalize. Isso significa que, se você criar uma ação personalizada ou um recurso que dependa do assembly, ele precisará ser sequenciado após a ação InstallFinalize. Por exemplo, se você precisar iniciar um serviço que dependa de um assembly no GAC (Cache de Assembly Global), precisará agendar o início desse serviço após a ação InstallFinalize. Isso significa que não é possível usar a tabela ServiceControl para iniciar o serviço. Em vez disso, você precisa usar uma ação personalizada que é sequenciada após InstallFinalize.

Validação

ICE03
ICE06
ICE32
ICE66
ICE83
ICE94