MsiAssembly-Tabelle
Die MsiAssembly-Tabelle gibt Windows Installer-Einstellungen für Microsoft .NET Framework Assemblys und Win32-Assemblys an. Weitere Informationen dazu finden Sie unter Installation von Assemblys im globalen Assemblycache und Installation von Win32-Assemblys.
Unter Windows XP kann Windows Installer Win32-Assemblys als parallele Assemblys installieren. Weitere Informationen dazu finden Sie unter Parallele Assembly-API.
Windows 2000: Dieses Feature wird nicht unterstützt.
Die MsiAssembly-Tabelle enthält die folgenden Spalten.
Spalte | Typ | Schlüssel | Nullwerte zulässig |
---|---|---|---|
Component_ | Identifier | J | N |
Feature_ | Identifier | N | N |
File_Manifest | Identifier | N | J |
File_Application | Identifier | N | J |
Attribute | Integer | N | J |
Spalten
-
Komponente_
-
Der Schlüssel in der Komponententabelle, der die Windows Installer-Komponente angibt, die diese Assembly enthält.
Der Wert in diesem Feld darf nicht auf NULL festgelegt werden. Das Element KeyPath-Feld in der Komponententabelle 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 in der Tabelle Feature.
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, der die Datei angibt, die das Manifest für eine .NET Framework- oder Win32-Assembly enthält.
Geben Sie für eine Win32-Assembly diese Datei nicht als Pfaddatei des Komponentenschlüssels im Feld KeyPath der Komponententabelle an.
-
File_Application
-
Um die Assembly an einem privaten Speicherort zu installieren, geben Sie die Schlüsselpfaddatei für die Assemblykomponente in dieses Feld ein.
Dies ist der Wert, der im Feld KeyPath der Komponententabelle angezeigt wird. Der Installer kann dann die Assembly in der Verzeichnisstruktur der Komponente installieren, die in der Verzeichnistabelle angegeben ist. Dieses Feld muss NULL sein, wenn die Assembly im globalen Assemblycache installiert werden soll.
-
Attribute
-
Geben Sie den Wert 1 (eins) für eine Win32-Assembly ein. Geben Sie den Wert 0 (null) für eine .NET Framework Assembly ein.
Wenn die Spalte Attribute NULL ist, behandelt der Installer die Assembly als .NET Framework Assembly.
Bemerkungen
Wenn mindestens ein Eintrag in der MsiAssembly-Tabelle vorhanden ist, muss die Tabelle InstallExecuteSequence die Aktion MsiPublishAssemblies und die Aktion MsiUnpublishAssemblies enthalten.
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 Aktion MsiPublishAssemblies generiert werden.
Die Assemblys werden erst dann committet, wenn die Aktion InstallFinalize erfolgreich ausgeführt wurde. Wenn Sie also eine benutzerdefinierte Aktion oder Ressource erstellen, die von der Assembly abhängig ist, muss diese nach der Aktion InstallFinalize eingeordnet 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 der Aktion InstallFinalize planen. Das bedeutet, dass Sie die Tabelle ServiceControl nicht verwenden können, um den Dienst zu starten. Stattdessen müssen Sie eine benutzerdefinierte Aktion verwenden, die nach InstallFinalize eingeplant wird.
Überprüfen