Freigeben über


MsiAssembly-Tabelle

Die MsiAssembly-Tabelle gibt Die Windows Installer-Einstellungen für Microsoft .NET Framework-Assemblys und Win32-Assemblys an. Weitere Informationen finden Sie unter Installation von Assemblys zum globalen Assemblycache und Installation von Win32-Assemblys.

Unter Windows XP kann Windows Installer Win32-Assemblys als parallele Assemblysinstallieren. Weitere Informationen finden Sie in der parallelen Assembly-API.

Windows 2000: Dieses Feature wird nicht unterstützt.

Die MsiAssembly-Tabelle enthält die folgenden Spalten.

Spalte Art Schlüssel Nullable
Bestandteil_ Bezeichner Y N
Merkmal_ Bezeichner N N
File_Manifest Bezeichner N Y
File_Application Bezeichner N Y
Attribute ganze Zahl N Y

 

Spalten

Component_

Der Schlüssel zur Komponententabelle, die die Komponente Windows Installer angibt, die diese Assembly enthält.

Der Wert in diesem Feld darf nicht auf NULL festgelegt werden. Das Feld "Component KeyPath" in der Component Table darf nicht null sein.

Bei Win32-Assemblys kann die Komponente KeyPath nicht die Manifestdatei sein, die in File_Manifest angegeben ist. Das Manifest kann der Schlüsselpfad für eine .NET Framework- oder Richtlinienassembly sein.

Feature_

Schlüssel zur Featuretabelle.

Wenn die Assembly durch eine Featureinstallation installiert werden muss, installiert Windows Installer das Feature, auf das dieses Feld verweist.

File_Manifest

Ein externer Schlüssel in der Dateitabelle, die die Datei angibt, die das Manifest für eine .NET Framework-Assembly oder Win32-Assembly enthält.

Geben Sie für eine Win32-Assembly diese Datei nicht als Schlüsselpfaddatei der Komponente im KeyPath-Feld der Component Tablean.

File_Application

Um die Assembly an einem privaten Speicherort zu installieren, geben Sie die Schlüsselpfaddatei für die Assemblykomponente in diesem Feld ein.

Dies ist der Wert, der im KeyPath-Feld der Component Tableangezeigt wird. Anschließend kann das Installationsprogramm die Assembly in der Verzeichnisstruktur der Komponente installieren, die in der Verzeichnistabelleangegeben ist. Dieses Feld muss null sein, wenn die Assembly im globalen Assemblycache installiert werden soll.

Attribute

Geben Sie einen Wert von 1 (eins) für eine Win32-Assembly ein. Geben Sie einen Wert von 0 (Null) für eine .NET Framework-Assembly ein.

Wenn die Spalte "Attributes" NULL ist, behandelt der Installer die Assembly als .NET Framework-Assembly.

Bemerkungen

Wenn mindestens ein Eintrag in der MsiAssembly-Tabelle vorhanden ist, muss die InstallExecuteSequence Table die MsiPublishAssemblies Actionund MsiUnpublishAssemblies Actionenthalten.

Da Assemblys nach dem Commit nicht zurückgesetzt werden können, verwendet Windows Installer einen zweistufigen Installationsprozess. Die Schnittstellen zu den Assemblys werden während der Installationsvorgänge erstellt, die von der MsiPublishAssemblies Actiongeneriert werden.

Die Assemblys werden erst ausgeführt, wenn die InstallFinalize Actionerfolgreich ausgeführt wird. Dies bedeutet: Wenn Sie eine benutzerdefinierte Aktion oder Ressource erstellen, die auf der Assembly basiert, muss sie nach dem InstallFinalize Actionsequenziert werden. Wenn Sie beispielsweise einen Dienst starten müssen, der von einer Assembly im globalen Assemblycache (GAC) abhängt, müssen Sie den Start dieses Diensts nach dem InstallFinalize-Aktionplanen. Dies bedeutet, dass Sie die ServiceControl Table- nicht verwenden können, um den Dienst zu starten, sondern sie müssen eine benutzerdefinierte Aktion verwenden, die nach InstallFinalize sequenziert wird.

Validierung

ICE03-
ICE06-
ICE32-
ICE66-
ICE83-
ICE94-