Feature-Tabelle

Die Feature-Tabelle definiert die logische Struktur von Features und enthält die in der folgenden Tabelle gezeigten Spalten.

Spalte Typ Schlüssel Nullwerte zulässig
Funktion Identifier J N
Feature_Parent Identifier N J
Titel Text N J
BESCHREIBUNG Text N J
Anzeige Integer N J
Ebene Integer N N
Directory_ Identifier N J
Attribute Integer N N

 

Spalten

Feature

Der Primärschlüssel, der zum Identifizieren eines bestimmten Featuredatensatzes verwendet wird. Der Wert in diesem Feld darf eine maximale Länge von 38 Zeichen nicht überschreiten.

Feature_Parent

Ein optionaler Schlüssel eines übergeordneten Datensatzes in derselben Tabelle.

Der Schlüssel verweist auf die Spalte „Feature“. Wenn das übergeordnete Feature nicht ausgewählt ist, wird dieses Feature nicht installiert. Ein NULL-Wert in diesem Feld gibt an, dass dieses Feature über kein übergeordnetes Element verfügt und ein Stammelement ist. Die Spalte „Feature_Parent“ darf nicht mit der Spalte „Feature“ desselben Datensatzes übereinstimmen.

Hinweis

Die maximale Tiefe eines Features beträgt 16. Ein Fehler 2701 tritt auf, wenn ein Feature vorhanden ist, das diese maximale Tiefe überschreitet.

 

Title

Eine kurze Textzeichenfolge, die ein Feature identifiziert.

Diese Zeichenfolge wird vom SelectionTree-Steuerelement des Auswahldialogfelds als Element aufgeführt.

Description

Eine längere Textzeichenfolge, die ein Feature beschreibt.

Diese lokalisierbare Zeichenfolge wird vom Textsteuerelement des Auswahldialogfelds angezeigt.

Display

Die Zahl in diesem Feld gibt die Reihenfolge an, in der das Feature auf der Benutzeroberfläche angezeigt werden soll.

Der Wert bestimmt auch, ob das Feature anfänglich auf- oder zugeklappt angezeigt wird. Wenn der Wert NULL oder 0 lautet, wird der Datensatz nicht angezeigt.

  • Wenn der Wert ungerade ist, wird der Featureknoten anfangs aufgeklappt angezeigt.
  • Ist der Wert gerade, wird der Featureknoten zunächst zugeklappt angezeigt.

Level

Die anfängliche Installationsebene dieses Features. Bei der Verarbeitung der Bedingungstabelle kann der Ebenenwert geändert werden.

Eine Installationsebene von 0 deaktiviert das Element und verhindert, dass es angezeigt wird. Ein Feature mit der Installationsebene 0 wird bei keiner Installation, auch nicht bei administrativen Installationen, installiert. Weitere Informationen finden Sie in den Informationen zur Installationsebene im Abschnitt „Hinweise“ dieses Themas.

Directory_

Die Spalte „Directory_“ gibt den Namen eines Verzeichnisses an, das über ein Auswahldialogfeld konfiguriert werden kann.

Da dieses Feld ein Schlüssel für die Verzeichnistabelle ist, muss das angegebene Verzeichnis in der ersten Spalte der Verzeichnistabelle aufgeführt sein. Sie müssen in dieser Spalte eine öffentliche Eigenschaft eingeben, um das Verzeichnis konfigurierbar zu machen und eine Schaltfläche Durchsuchen im Auswahldialogfeld anzuzeigen.

Attributes

Die Remoteausführungsoption für Features, die nicht installiert sind und für die kein Featurezustand mithilfe einer der folgenden Eigenschaften angefordert wird.

Fügen Sie die angegebenen Bits zum Gesamtwert dieser Spalte hinzu, um eine Remoteausführungsoption einzuschließen.

  • Wenn dieses Feld leer ist, lautet der Wert standardmäßig 0, msidbFeatureAttributesFavorLocal.
  • Wenn die Featureinstallationsebene 0 oder größer oder gleich der aktuellen Installationsebene ist, werden am Featurezustand keine Änderungen vorgenommen.
Name Decimal Hexadezimal BESCHREIBUNG
msidbFeatureAttributesFavorLocal 0 0x0000 Komponenten dieses Features, die nicht für die Installation über die Quelle markiert sind, werden lokal installiert. Eine Komponente, die von zwei oder mehr Features gemeinsam genutzt wird, von denen einige auf msidbFeatureAttributesFavorLocal und einige auf msidbFeatureAttributesFavorSource festgelegt sind, wird lokal installiert. Komponenten, die in der Komponententabelle mit msidbComponentAttributesSourceOnly gekennzeichnet sind, werden immer über die Quell-CD/den Quellserver ausgeführt. Die Bits msidbFeatureAttributesFavorLocal und msidbFeatureAttributesFavorSource arbeiten mit Features, die in der ADVERTISE-Eigenschaft nicht aufgeführt sind.
msidbFeatureAttributesFavorSource 1 0x0001 Komponenten dieses Features, die nicht für die lokale Installation markiert sind, werden für die Ausführung über die Quell-CD-ROM oder den Quellserver installiert. Eine Komponente, die von zwei oder mehr Features gemeinsam genutzt wird, von denen einige auf msidbFeatureAttributesFavorLocal und einige auf msidbFeatureAttributesFavorSource festgelegt sind, wird für die lokale Ausführung installiert. Komponenten, die in der Komponententabelle mit msidbComponentAttributesLocalOnly gekennzeichnet sind, werden immer lokal installiert. Die Bits msidbFeatureAttributesFavorLocal und msidbFeatureAttributesFavorSource arbeiten mit Features, die in der ADVERTISE-Eigenschaft nicht aufgeführt sind.
msidbFeatureAttributesFollowParent 2 0x0002 Legen Sie dieses Attribut fest, damit der Status des Features dem Zustand des übergeordneten Features entspricht. Sie können diese Option nicht verwenden, wenn sich das Feature im Stammverzeichnis einer Featurestruktur befindet. Lassen Sie dieses Attribut aus, damit der Featurezustand gemäß msidbFeatureAttributesDisallowAdvertise, msidbFeatureAttributesFavorLocal und msidbFeatureAttributesFavorSource festgelegt wird.
Um sicherzustellen, dass der Zustand des untergeordneten Features immer dem Zustand des übergeordneten Features folgt, auch wenn das untergeordnete und das übergeordnete Element im SelectionTree-Steuerelement zunächst auf „Nicht vorhanden“ festgelegt sind, müssen Sie sowohl msidbFeatureAttributesFollowParent als auch msidbFeatureAttributesUIDisallowAbsent in die Attribute des untergeordneten Features einschließen.
Wenn Sie msidbFeatureAttributesFollowParent festlegen, ohne msidbFeatureAttributesUIDisallowAbsent festzulegen, kann das Installationsprogramm keinen Wechsel des untergeordneten Features aus dem Zustand „Nicht vorhanden“ erzwingen. In diesem Fall stimmt das untergeordnete Feature nur dann mit dem Installationszustand des übergeordneten Elements überein, wenn das untergeordnete Feature auf einen anderen Zustand als „Nicht vorhanden“ festgelegt ist.
Legen Sie msidbFeatureAttributesFollowParent und msidbFeatureAttributesUIDisallowAbsent fest, um sicherzustellen, dass ein untergeordnetes Feature dem Zustand des übergeordneten Features folgt.
msidbFeatureAttributesFavorAdvertise 4 0x0004 Legen Sie dieses Attribut fest, damit der Featurezustand „Ankündigen“ lautet. Wird das Feature von der ADDDEFAULT-Eigenschaft aufgeführt, wird dieses Bit ignoriert, und der Featurezustand wird anhand von msidbFeatureAttributesFavorLocal und msidbFeatureAttributesFavorSource bestimmt. Lassen Sie dieses Attribut aus, damit der Featurezustand gemäß msidbFeatureAttributesDisallowAdvertise, msidbFeatureAttributesFavorLocal und msidbFeatureAttributesFavorSource festgelegt wird.
msidbFeatureAttributesDisallowAdvertise 8 0x0008 Beachten Sie, dass dieses Bit nur mit Features funktioniert, die von der ADVERTISE-Eigenschaft aufgelistet werden. Legen Sie dieses Attribut fest, um zu verhindern, dass das Feature angekündigt wird.
Wenn Sie dieses Attribut festlegen und das aufgelistete Feature kein übergeordnetes oder untergeordnetes Feature ist, wird das Feature gemäß msidbFeatureAttributesFavorLocal und msidbFeatureAttributesFavorSource installiert.
Legen Sie dieses Attribut für das übergeordnete Element eines aufgelisteten Features fest, damit das übergeordnete Element installiert wird.
Legen Sie dieses Attribut für das untergeordnete Element eines aufgelisteten Features fest, damit der Zustand des untergeordneten Elements „Nicht vorhanden“ lautet.
Wenn Sie dieses Attribut auslassen und das aufgelistete Feature kein übergeordnetes oder untergeordnetes Feature ist, lautet der Featurezustand „Ankündigen“.
Wenn Sie dieses Attribut auslassen und das aufgelistete Feature ein übergeordnetes oder untergeordnetes Feature ist, lautet der Featurezustand für beide Features „Ankündigen“.
msidbFeatureAttributesUIDisallowAbsent 16 0x0010 Legen Sie dieses Attribut fest, damit die Benutzeroberfläche keine Option zum Ändern des Featurezustands in „Nicht vorhanden“ anzeigt. Durch Festlegen dieses Attributs wird für das Feature der Installationszustand erzwungen, unabhängig davon, ob das Feature auf der Benutzeroberfläche sichtbar ist oder nicht. Lassen Sie dieses Attribut aus, damit die Benutzeroberfläche eine Option zum Ändern des Featurezustands in „Nicht vorhanden“ anzeigt.
Legen Sie msidbFeatureAttributesFollowParent und msidbFeatureAttributesUIDisallowAbsent fest, um sicherzustellen, dass ein untergeordnetes Feature dem Zustand des übergeordneten Features folgt.
Das Festlegen dieses Attributs wirkt sich nicht nur auf die Benutzeroberfläche aus, sondern erzwingt auch den Installationszustand des Features, unabhängig davon, ob das Feature auf der Benutzeroberfläche sichtbar ist oder nicht.
msidbFeatureAttributesNoUnsupportedAdvertise 32 0x0020 Legen Sie dieses Attribut fest, um die Ankündigung für das Feature zu deaktivieren, wenn die Betriebssystemshell keine Windows Installer-Deskriptoren unterstützt. Lassen Sie dieses Attribut aus, um Ankündigungen nicht zu deaktivieren.

 

Einige Attribute schließen sich gegenseitig aus. Wenn Sie versuchen, diese Attribute zusammen für dasselbe Feature festzulegen, tritt beim Installationspaket ein Fehler bei der Paketüberprüfung auf.

  • Verwenden Sie msidbFeatureAttributesFavorAdvertise nicht mit msidbFeatureAttributesDisallowAdvertise.
  • Verwenden Sie msidbFeatureAttributesNoUnsupportedAdvertise nicht mit msidbFeatureAttributesDisallowAdvertise.
  • Verwenden Sie msidbFeatureAttributesFollowParent nicht mit msidbFeatureAttributesFavorSource.
  • Beachten Sie, dass sich die Werte msidbFeatureAttributesFollowParent und msidbFeatureAttributesFavorLocal gegenseitig ausschließen. Bei Verwendung des Werts msidbFeatureAttributesFollowParent wird davon ausgegangen, dass der Wert msidbFeatureAttributesFavorLocal nicht vorhanden ist.

Beachten Sie, dass bei Installation eines untergeordneten Features auch das übergeordnete Feature installiert wird. Bei der Installation eines übergeordneten Features wird das untergeordnete Feature möglicherweise nur dann installiert, wenn die Attribute msidbFeatureAttributesFollowParent und msidbFeatureAttributesUIDisallowAbsent festgelegt sind. Diese hierarchische Beziehung der Installation übergeordneter und untergeordneter Features wird auch für GUI-Installationen und für Installationen mit Befehlszeileneigenschaften verwendet.

Bemerkungen

Dieser Tabelle werden mehrere zusätzliche temporäre Spalten hinzugefügt, wenn sie zu Berechnungen für die Nachkalkulation und die Benutzeroberflächenauswahl in den Arbeitsspeicher geladen wird.

Eine Komponente kann von mehreren Features oder Anwendungen gemeinsam genutzt werden. Wenn mehrere Features auf dieselbe Komponente verweisen, wird diese Komponente für die Installation ausgewählt, sobald eines der zugeordneten Features ausgewählt wird. Dies kann auch der Grund dafür sein, dass untergeordnete Features nicht deinstalliert werden, wenn ein übergeordnetes Feature entfernt wird. Wenn das untergeordnete Feature aus Komponenten besteht, die von anderen Features oder Anwendungen beansprucht werden, entfernt der Windows Installer das untergeordnete Feature nicht.

Weitere Informationen finden Sie unter Steuern von Featureauswahlzuständen.

Installationsebene:

  • Für jede Installation ist eine Installationsebene definiert. Dabei handelt es sich um einen integralen Wert von 1 bis 32.767. Der Anfangswert wird durch die INSTALLLEVEL-Eigenschaft bestimmt, die in der Eigenschaftentabelle festgelegt wird.
  • Ein Feature wird nur installiert, wenn der Wert auf Featureebene kleiner oder gleich der aktuellen Installationsebene ist. Die Benutzeroberfläche kann so erstellt werden, dass der Installer den Benutzer*innen das Ändern der Installationsebene eines beliebigen Features in der Feature-Tabelle beim Initialisieren der Installation gestattet. Beispielsweise können Autor*innen Werte auf Installationsebene definieren, die bestimmte Installationsoptionen darstellen, z. B. Benutzerdefiniert, Typisch oder Minimal. Anschließend können sie ein Dialogfeld erstellen, das SetInstallLevel ControlEvents verwendet, um den Benutzer*innen die Auswahl eines dieser Zustände zu ermöglichen.
  • Abhängig vom ausgewählten Zustand legt das Dialogfeld die Installationsebeneneigenschaft auf den entsprechenden Wert fest. Wenn Autor*innen Typisch die Ebene 100 zuweisen und Benutzer*innen Typisch auswählen, werden nur die Features mit einer Ebene von 100 oder weniger installiert. Darüber hinaus kann die Option Benutzerdefiniert zu einem weiteren Dialogfeld führen, das ein SelectionTree-Steuerelement enthält. Mithilfe des SelectionTree-Steuerelements können Benutzer*innen dann für jedes Feature festlegen, ob es installiert wird oder nicht.

Überprüfen

ICE03
ICE06
ICE10
ICE14
ICE21
ICE32
ICE41
ICE45
ICE47
ICE50
ICE57
ICE59
ICE62
ICE67
ICE79
ICE86
ICE94