Benutzerdefinierter Aktionstyp 51

Diese benutzerdefinierte Aktion legt eine Eigenschaft aus einer formatierten Textzeichenfolge fest.

Um sich auf eine Eigenschaft auszuwirken, die in einer Bedingung bei einer Komponente oder Funktion verwendet wird, muss die benutzerdefinierte Aktion in der Aktionssequenz vor der Aktion CostFinalize erfolgen.

`Source`

Das Feld „Source“ der Tabelle „CustomAction“ kann entweder den Namen einer Eigenschaft oder einen Schlüssel für die Tabelle „Property“ enthalten. Diese Eigenschaft wird durch die formatierte Zeichenfolge im Feld „Target“ mit MsiSetProperty festgelegt.

Type-Wert

Fügen Sie den folgenden Wert in die Type-Spalte der CustomAction-Tabelle ein, um den grundlegenden numerischen Typ anzugeben.

Konstanten Hexadezimal Decimal
msidbCustomActionTypeTextData + msidbCustomActionTypeProperty 0x033 51

 

Ziel

Die Spalte „Target“ der Tabelle „CustomAction“ enthält eine Textzeichenfolge, die mit der in MsiFormatRecord festgelegten Funktionalität formatiert ist (ohne die numerischen Feldspezifizierer). Zu ersetzende Parameter sind in eckige Klammern [...] eingeschlossen. Sie können Eigenschaften, Umgebungsvariablen (Präfix %), Dateipfade (Präfix #) oder Komponenten-Verzeichnispfade (Präfix $) sein.

Optionen für die Rückgabeverarbeitung

Die benutzerdefinierte Aktion verwendet diese Optionen nicht.

Optionen für die Ausführungsplanung

Fügen Sie optionale Flagbits in die Type-Spalte der CustomAction-Tabelle ein, um Optionen für die Ausführungsplanung anzugeben. Diese Optionen steuern die mehrfache Ausführung benutzerdefinierter Aktionen. Eine Beschreibung der Optionen finden Sie unter Optionen für die Ausführungsplanung benutzerdefinierter Aktionen.

Optionen für die skriptinterne Ausführung

Die benutzerdefinierte Aktion verwendet diese Optionen nicht.

Rückgabewerte

Weitere Informationen finden Sie unter Rückgabewerte für benutzerdefinierte Aktionen.

Bemerkungen

Wenn Sie eine private Eigenschaft in der UI-Sequenz festlegen, indem Sie eine benutzerdefinierte Aktion in einer der Sequenztabellen der Benutzeroberfläche erstellen, wird diese Eigenschaft in der Ausführungssequenz nicht festgelegt. Um die Eigenschaft in der Ausführungssequenz festzulegen, müssen Sie auch eine benutzerdefinierte Aktion in eine Ausführungssequenztabelle aufnehmen. Alternativ können Sie die Eigenschaft als öffentliche Eigenschaft festlegen und in die Eigenschaft SecureCustomProperties einschließen.

Custom_Actions

Benutzerdefinierte Aktionen für formatierten Text