Interne Konsistenzauswertung – ICEs

Interne Konsistenzauswertungen, auch als ICEs (Internal Consistency Evaluators) bezeichnet, sind benutzerdefinierte Aktionen, die in VBScript oder JScript geschrieben wurden oder als DLL oder EXE-Datei vorliegen. Bei der Ausführung überprüfen diese benutzerdefinierten Aktionen die Datenbank auf Einträge in Datensätzen, die einzeln gültig sind, jedoch im Kontext der gesamten Datenbank zu einem falschen Verhalten führen können. Beachten Sie, dass sich dies von der Überprüfung einzelner Datensätze mit MsiViewModify unterscheidet.

Beispielsweise können in der Tabelle Component mehrere Komponenten aufgeführt sein, die alle bei einer Einzelprüfung mit MsiViewModify gültig sind. MsiViewModify würde jedoch nicht den Fehler abfangen, wenn zwei Komponenten dieselbe GUID als Komponentencode verwenden. Die benutzerdefinierte Aktion ICE08 dient zur Überprüfung, ob die Tabelle „Component“ doppelte Komponentencode-GUIDs enthält.

Benutzerdefinierte ICE-Aktionen geben vier Arten von Nachrichten zurück:

  • Fehler: Fehlermeldungen zu Vorgängen bei der Datenbankerstellung, die zu falschem Verhalten führen. Doppelte Komponenten-GUIDs führen beispielsweise dazu, dass das Installationsprogramm Komponenten falsch registriert.
  • Warnungen: Warnmeldung zu Vorgängen bei der Datenbankerstellung, die in bestimmten Fällen zu falschem Verhalten führen. Warnungen können auch unerwartete Nebenwirkungen der Datenbankerstellung melden. Beispiel: Eingabe desselben Eigenschaftennamens in zwei Bedingungen, die sich nur durch die Groß-/Kleinschreibung im Namen unterscheiden. Da im Installationsprogramm die Groß-/Kleinschreibung beachtet wird, behandelt das Installationsprogramm diese als unterschiedliche Eigenschaften.
  • Fehlschlag: Fehlschlagsmeldungen zu Fehlern in der benutzerdefinierten ICE-Aktion. Fehler dieses Typs werden häufig durch eine Datenbank mit so schwerwiegenden Problemen verursacht, dass die ICE nicht einmal ausgeführt werden kann.
  • Information: Informationsmeldungen der ICE, die nicht auf ein Problem mit der Datenbank hinweisen. Häufig handelt es sich dabei um Informationen zur ICE selbst, z. B. eine kurze Beschreibung. Sie können auch Statusinformationen während der ICE-Ausführung bereitstellen.

Weitere Informationen finden Sie unter Verwenden der internen Konsistenzauswertung.