MsiEmbeddedUI-Tabelle
Die MsiEmbeddedUI-Tabelle definiert eine Benutzeroberfläche, die in das Windows Installer-Paket eingebettet ist.
Windows Installer 4.0 oder frühere: Nicht unterstützt. Diese Tabelle ist ab Windows Installer 4.5 verfügbar.
Die MsiEmbeddedUI-Tabelle enthält die folgenden Spalten.
Spalte | Art | Schlüssel | Nullable |
---|---|---|---|
MsiEmbeddedUI | Bezeichner | Y | N |
Dateiname | N | N | |
Attribute | ganze Zahl | N | N |
MessageFilter | DoubleInteger- | N | Y |
Daten | Binäre | N | N |
Spalten
-
MsiEmbeddedUI
-
Der Primärschlüssel für die Tabelle.
-
FileName
-
Der Name der Datei, die die binären Informationen in der Spalte "Daten" empfängt. Der Name der Datei ist erforderlich, um eine Erweiterung einzuschließen. Beispielsweise ist der Name embeddedui.dll akzeptabel, aber embeddedui- ist inakzeptabel. Der Name kann lokalisiert werden. Dieses Feld kann einen kurzen Dateinamen oder einen langen Dateinamen enthalten, kann aber nicht beide enthalten. Das Format dieses Felds entspricht der Dateiname Spaltendatentyps, mit der Ausnahme, dass das vertikale Balkentrennzeichen (|) für die Syntax für kurze Dateinamen/lange Dateinamen nicht verfügbar ist. Da bei einigen Webservern die Groß-/Kleinschreibung beachtet werden kann, sollte FileName genau mit der Groß-/Kleinschreibung der Quelldateien übereinstimmen, um die Unterstützung von Internetdownloads sicherzustellen.
-
Attribute
-
Informationen zu den Daten in der Datenspalte. Der Wert in diesem Feld kann eine oder mehrere der folgenden Konstanten enthalten.
Konstante Hexadezimal Dezimal Bedeutung Nichts 0x00 0 Die Datei ist nicht die DLL-Datei für die Benutzeroberfläche. Dies kann eine Ressourcendatei sein, die von der Benutzeroberfläche verwendet wird. msidbEmbeddedUI- 0x01 1 Die primäre DLL-Datei für die Benutzeroberfläche. Mit diesem Attribut können nicht mehr als eine Zeile in der Tabelle markiert werden. Wenn mehrere Zeilen mit diesem Attribut gekennzeichnet sind, handelt es sich um einen Fehler und kann nicht garantiert werden, welche DLL verwendet wird. msidbEmbeddedHandlesBasic 0x02 2 Ermöglicht dem Installationsprogramm, die eingebettete Benutzeroberfläche während einer einfachen Installation auf Benutzeroberflächenebene aufzurufen. Das Installationsprogramm ignoriert dieses Attribut, wenn es nicht mit dem msidbEmbeddedUI Attribut kombiniert wird. -
MessageFilter
-
Gibt die Typen von Nachrichten an, die an die Benutzeroberflächen-DLL gesendet werden. Diese Spalte ist nur für Zeilen mit dem attribut msidbEmbeddedUI relevant. Dieses Feld sollte null sein, wenn eine Zeile auf eine Ressourcendatei verweist und der Wert von Attributes null ist. Wenn eine Zeile auf eine Benutzeroberflächen-DLL verweist, sollte der Wert in dieser Spalte nicht null sein.
Der Wert in dieser Spalte kann eine Kombination aus den folgenden Werten sein. Das Installationsprogramm ignoriert alle anderen Werte.
Konstante Hexadezimal Dezimal Beschreibung INSTALLLOGMODE_FATALEXIT 0x00001 1 Vorzeitige Kündigung. INSTALLLOGMODE_ERROR 0x00002 2 Fehlermeldungen. INSTALLLOGMODE_WARNING 0x00004 4 Warnmeldungen. INSTALLLOGMODE_USER 0x00008 8 Benutzernachrichten. INSTALLLOGMODE_INFO 0x00010 16 Unlogged status messages. INSTALLLOGMODE_FILESINUSE 0x00020 32 Dateien, die derzeit verwendet werden. INSTALLLOGMODE_RESOLVESOURCE 0x00040 64 Quellauflösungsanforderungen. INSTALLLOGMODE_OUTOFDISKSPACE 0x00080 128 Speicherplatzmeldungen. INSTALLLOGMODE_ACTIONSTART 0x00100 256 Aktionsstartmeldungen. INSTALLLOGMODE_ACTIONDATA 0x00200 512 Aktionsdatenmeldungen. INSTALLLOGMODE_PROGRESS 0x00400 1024 Statusmeldungen. INSTALLLOGMODE_COMMONDATA 0x00800 2048 Benutzeroberflächeninitialisierungsmeldungen. INSTALLLOGMODE_INITIALIZE 0x01000 4096 Startmeldungen der Benutzeroberfläche, die gesendet werden, wenn eine Produktinstallation gestartet wird. INSTALLLOGMODE_TERMINATE 0x02000 8192 Nachrichten zum Herunterfahren der Benutzeroberfläche, die nach Abschluss einer Produktinstallation gesendet wurden. INSTALLLOGMODE_SHOWDIALOG 0x04000 16384 Nachrichten, die vor der Anzeige des Ui-Dialogfelds gesendet wurden. INSTALLLOGMODE_RMFILESINUSE 0x02000000 33554432 Dateien, die derzeit verwendet werden. INSTALLLOGMODE_INSTALLSTART 0x04000000 67108864 Die Installation des Produkts beginnt. Die Nachricht enthält den ProductName und Den ProductCode des Produkts. INSTALLLOGMODE_INSTALLEND 0x08000000 134217728 Die Installation von Produktenden wird beendet. Die Nachricht enthält den ProductName-, ProductCode- und Rückgabewert des Produkts. -
Daten
-
Diese Spalte enthält binäre Informationen. Wenn das Attributfeld mit dem msidbEmbeddedUI Attribut gekennzeichnet ist, müssen die Informationen in diesem Feld eine DLL sein. Wenn das Attributfeld nicht das msidbEmbeddedUI Attribut ist, können die Informationen in diesem Feld eine Ressourcendatei in einem beliebigen Format sein.
Bemerkungen
Um eine eingebettete Benutzeroberfläche zu verwenden, muss der Setupentwickler diese Funktionalität im Windows Installer-Paket erstellen. Die MsiEmbeddedUI-Tabelle definiert die eingebettete Benutzeroberfläche. Die DLL für die eingebettete Benutzeroberfläche sollte die InitializeEmbeddedUI-, EmbeddedUIHandler-und ShutdownEmbeddedUI--Funktionen exportieren. Pakete, die eine eingebettete Benutzeroberfläche nicht unterstützen, können die interne Benutzeroberfläche von Windows Installer verwenden.
Um Debugtools für Windows auf einer eingebetteten Benutzeroberfläche auszuführen, verwenden Sie die unter Debuggen von benutzerdefinierten Aktionenbeschriebenen Techniken. Legen Sie den Wert von MsiBreak auf MsiEmbeddedUI fest.
Ein Beispiel für eine eingebettete benutzerdefinierte Benutzeroberfläche finden Sie unter Using an Embedded UI.