Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Die MsiSetExternalUIRecord-Funktion ermöglicht einen externen Benutzeroberflächenhandler.
Syntax
UINT MsiSetExternalUIRecord(
[in] INSTALLUI_HANDLER_RECORD puiHandler,
[in] DWORD dwMessageFilter,
[in] LPVOID pvContext,
[out, optional] PINSTALLUI_HANDLER_RECORD ppuiPrevHandler
);
Die Parameter
[in] puiHandler
Gibt eine Rückruffunktion an, die der INSTALLUI_HANDLER_RECORD Spezifikation entspricht.
Um den aktuellen externen UI-Handler zu deaktivieren, rufen Sie die Funktion mit diesem Parameter auf einen NULL-Wert auf.
[in] dwMessageFilter
Gibt an, welche Nachrichten mithilfe des externen Nachrichtenhandlers verarbeitet werden sollen. Wenn der externe Handler ein Nicht-Null-Ergebnis zurückgibt, wird diese Nachricht nicht an die Benutzeroberfläche gesendet, sondern die Nachricht wird protokolliert, wenn die Protokollierung aktiviert ist. Weitere Informationen finden Sie unter MsiEnableLog.
| Wert | Bedeutung |
|---|---|
|
Verwendete Dateien.
Wenn diese Nachricht empfangen wird, sollte ein FilesInUse-Dialogfeld angezeigt werden. |
|
Vorzeitige Beendigung der Installation. |
|
Die Fehlermeldungen werden protokolliert. |
|
Die Warnmeldungen werden protokolliert. |
|
Die Benutzeranforderungen werden protokolliert. |
|
Die statusmeldungen, die nicht angezeigt werden, werden protokolliert. |
|
Anforderung zum Ermitteln eines gültigen Quellspeicherorts. |
|
Verwendete Dateien. Wenn diese Nachricht empfangen wird, sollte ein MsiRMFilesInUse-Dialogfeld angezeigt werden. |
|
Der Speicherplatz reicht nicht aus. |
|
Der Start neuer Installationsaktionen wird protokolliert. |
|
Der Datensatz mit der Installationsaktion wird protokolliert. |
|
Die Parameter für die Initialisierung der Benutzeroberfläche werden protokolliert. |
|
Die Statusleisteninformationen .
Diese Meldung enthält Informationen zu einheiten bis heute und die Gesamtanzahl der Einheiten. Diese Nachricht wird nur an eine externe Benutzeroberfläche gesendet und nicht protokolliert. Weitere Informationen finden Sie unter MsiProcessMessage. |
|
Wenn dies keine ruhige Installation ist, wird die grundlegende Benutzeroberfläche initialisiert.
Wenn es sich um eine vollständige UI-Installation handelt, wird die vollständige Benutzeroberfläche noch nicht initialisiert. Diese Nachricht wird nur an eine externe Benutzeroberfläche gesendet und nicht protokolliert. |
|
Wenn eine vollständige Benutzeroberfläche verwendet wird, wurde die vollständige Benutzeroberfläche beendet.
Wenn dies keine ruhige Installation ist, wurde die grundlegende Benutzeroberfläche nicht beendet. Diese Nachricht wird nur an eine externe Benutzeroberfläche gesendet und nicht protokolliert. |
|
Vor der Anzeige des Dialogfelds "Vollständige Benutzeroberfläche" gesendet.
Diese Nachricht wird nur an eine externe Benutzeroberfläche gesendet und nicht protokolliert. |
|
Die Installation des Produkts beginnt.
Die Nachricht enthält den ProductName und Den ProductCode des Produkts. |
|
Die Installation von Produktenden wird beendet.
Die Nachricht enthält den ProductName-, ProductCode- und Rückgabewert des Produkts. |
[in] pvContext
Ein Zeiger auf einen Anwendungskontext, der an die Rückruffunktion übergeben wird.
Dieser Parameter kann für die Fehlerüberprüfung verwendet werden.
[out, optional] ppuiPrevHandler
Gibt den Zeiger auf die zuvor festgelegte Rückruffunktion zurück, die der INSTALLUI_HANDLER_RECORD Spezifikation entspricht, oder NULL , wenn zuvor kein Rückruf festgelegt wurde.
Rückgabewert
| Rückgabecode | Description |
|---|---|
|
Die Funktion wird erfolgreich abgeschlossen. |
|
Dieser Wert gibt an, dass versucht wird, diese Funktion aus einer benutzerdefinierten Aktion aufzurufen.
Diese Funktion kann nicht aus einer benutzerdefinierten Aktion aufgerufen werden. |
Bemerkungen
Diese Funktion kann nicht aus benutzerdefinierten Aktionen aufgerufen werden.
Der externe UI-Handler, der durch Aufrufen von MsiSetExternalUIRecord aktiviert wird, empfängt Nachrichten im Format eines Record-Objekts. Der externe UI-Handler, der durch Aufrufen von MsiSetExternalUI aktiviert wird, empfängt Nachrichten im Format einer Zeichenfolge. Eine externe Benutzeroberfläche wird immer vor der internen Benutzeroberfläche von Windows Installer aufgerufen. Eine aktivierte, datensatzbasierte externe Benutzeroberfläche wird vor einer zeichenfolgenbasierten externen Benutzeroberfläche aufgerufen. Wenn der datensatzbasierte externe UI-Handler 0 (null) zurückgibt, wird die Nachricht an einen aktivierten Zeichenfolgenbasierten externen UI-Handler gesendet. Wenn der externe UI-Handler einen Wert ungleich Null zurückgibt, wird der interne Windows Installer-UI-Handler unterdrückt, und die Meldungen werden als behandelt betrachtet.
Diese Funktion speichert die von ihr festgelegten externen Benutzeroberflächen. Um den aktuellen externen UI-Handler durch einen vorherigen Handler zu ersetzen, rufen Sie die Funktion auf, und geben Sie die INSTALLUI_HANDLER_RECORD als puiHandler-Parameter und 0 (null) als dwMessageFilter-Parameter an.
Der externe Benutzeroberflächenhandler, auf den der puiHandler-Parameter verweist, verfügt nicht über die vollständige Kontrolle über die externe Benutzeroberfläche, es sei denn , MsiSetInternalUI wird aufgerufen, wobei der dwUILevel-Parameter auf INSTALLUILEVEL_NONE festgelegt ist. Wenn MsiSetInternalUI nicht aufgerufen wird, wird standardmäßig die interne Benutzeroberflächenebene auf INSTALLUILEVEL_BASIC festgelegt. Daher wird jede Nachricht, die vom Handler für die externe Benutzeroberfläche nicht behandelt wird, von Windows Installer behandelt. Die erste "Vorbereitung der Installation. . " Dialogfeld wird immer angezeigt, auch wenn der Handler der externen Benutzeroberfläche alle Nachrichten verarbeitet. MsiSetExternalUI sollte nur von einer Bootstrapping-Anwendung aufgerufen werden. Sie können msiSetExternalUI nicht aus einer benutzerdefinierten Aktion aufrufen.
Um diesen externen UI-Handler zu deaktivieren, rufen Sie MsiSetExternalUIRecord mit einem NULL-Wert für den puiHandler-Parameter auf.
Windows Installer 2.0 und Windows Installer 3.0: Nicht unterstützt. Die MsiSetExternalUIRecord-Funktion ist ab Windows Installer 3.1 verfügbar.
Weitere Informationen zur Verwendung eines datensatzbasierten externen Handlers finden Sie unter Überwachen einer Installation mit MsiSetExternalUIRecord.
Anforderungen
| Anforderung | Wert |
|---|---|
| Mindestens unterstützter Client | Windows Installer 5.0 unter Windows Server 2012, Windows 8, Windows Server 2008 R2 oder Windows 7. Windows Installer 4.0 oder Windows Installer 4.5 unter Windows Server 2008 oder Windows Vista. Informationen zum mindestens von einer Windows Installer-Version erforderlichen Windows-Service Pack finden Sie unter den Windows Installer-Run-Time Anforderungen. |
| Zielplattform | Fenster |
| Header | msi.h |
| Library | Msi.lib |
| DLL | Msi.dll |
Siehe auch
Schnittstellen- und Protokollierungsfunktionen
In Windows Installer 3.0 und früheren Versionen nicht unterstützt