Verwenden von Windows Installer und Windows Resource Protection

Windows Installer beachtet Windows Resource Protection (WRP), wenn wichtige Systemdateien, Ordner und Registrierungsinformationen in Windows Server 2008 und höher bzw. Windows Vista und höher installiert werden.

WRP in Windows Server 2008 und Windows Vista ersetzt Windows File Protection (WFP) in Windows Server 2003, Windows XP und Windows 2000. Windows Installer-Entwickler sollten die folgenden Änderungen im Umgang des Installationsprogramms mit geschützten Ressourcen in Windows Server 2008 und höher bzw. Windows Vista und höher beachten:

  • Bei Ausführung von Windows Server 2008 und höher bzw. Windows Vista und höher überspringt Windows Installer die Installation aller durch WRP geschützten Dateien, das Installationsprogramm trägt eine Warnung in die Protokolldatei ein und setzt den Rest der Installation ohne Fehler fort. Wenn Windows Installer in Windows Server 2003, Windows XP und Windows 2000 eine WFP-geschützte Datei findet, fordert das Installationsprogramm die Installation der Datei durch WFP an.
  • WRP für Windows Server 2008 und höher bzw. Windows Vista und höher kann zusätzlich zu Dateien Auch Registrierungsschlüssel schützen. Wenn der Windows Installer auf einen WRP-geschützten Registrierungsschlüssel stößt, überspringt das Installationsprogramm die Installation dieses Registrierungsschlüssels, das Installationsprogramm trägt eine Warnung in die Protokolldatei ein und fährt mit dem Rest der Installation ohne Fehler fort.
  • Wenn eine Windows Installer-Komponente eine Datei oder einen Registrierungsschlüssel enthält, der durch WRP geschützt ist, muss diese Ressource als KeyPath für die Komponente verwendet werden. In diesem Fall installiert, aktualisiert oder entfernt Windows Installer die Komponente nicht. Sie sollten keine geschützten Ressourcen in ein Installationspaket einschließen. Stattdessen sollten Sie die unterstützten Ressourcenersetzungsmechanismen für Windows Resource Protection verwenden.

Weitere Informationen zu WRP finden Sie unter Windows Resource Protection und in über Microsoft Technet verfügbaren Informationen.

WFP für Windows Server 2003 und Windows XP/2000

Windows Installer beachtet Windows File Protection (WFP) ein, wenn wichtige Systemdateien unter Windows Server 2003, Windows XP und Windows 2000 installiert werden. Wenn eine geschützte Systemdatei durch eine unbeaufsichtigte Installation einer Anwendung geändert wird, stellt WFP die überprüfte Dateiversion der Datei wieder her.

Windows Installer wird nie versuchen, eine geschützte Datei zu installieren oder zu ersetzen. Wenn die InstallFiles-Aktion oder eine andere Aktion, die vor dem Versuch von InstallFiles geplant war, eine unter Windows Server 2003, Windows XP oder Windows 2000 geschützte Datei zu installieren, ruft das Installationsprogramm WFP mithilfe einer Anforderung auf, die geschützte Datei zu installieren oder zu ersetzen. Das Installationsprogramm fordert die Dateiinstallation direkt nach dem Ausführen der InstallFiles-Aktion von WFP an. WFP installiert oder ersetzt die Datei auf dem System des Benutzers durch eine zwischengespeicherte Version der geschützten Datei. Beachten Sie, dass dabei nicht garantiert ist, dass die Version der aus dem Cache installierten Datei die für die Anwendung erforderliche Version ist. Nachdem WFP die Datei installiert hat, bestimmt das Installationsprogramm, ob diese Version mit der Version im Paket übereinstimmt. Wenn die Dateiversion im Paket höher als die installierte Version ist, informiert das Installationsprogramm den Benutzer darüber, dass das System nicht aktualisiert werden kann und dass möglicherweise ein Update des Betriebssystems für die Anwendung erforderlich ist.

Wenn eine nach InstallFiles sequenzierte Aktion versucht, eine geschützte Datei zu installieren oder zu ersetzen, die nicht bereits auf dem System installiert ist, kann das Installationsprogramm WFP nicht aufrufen, um die Datei zu installieren. In diesem Fall informiert das Installationsprogramm den Benutzer darüber, dass das System nicht aktualisiert werden kann und dass möglicherweise ein Update des Betriebssystems für die Anwendung erforderlich ist.

Das Installationsprogramm beachtet WFP auch beim Entfernen von Dateien und versucht nie, geschützte Systemdateien zu entfernen.

Durch WFP geschützte Komponentenschlüsseldateien

Beachten Sie: Wenn eine Windows Installer-Komponente eine WFP-Datei enthält, muss diese Datei als Schlüsselpfad für die Komponente angegeben werden.

Wenn das Installationsprogramm versucht, die Schlüsseldatei einer Komponente unter Windows Server 2003, Windows XP oder Windows 2000 zu installieren, wird zuerst WFP aufgerufen, um zu bestimmen, ob die Schlüsseldatei geschützt ist. Wenn die Schlüsseldatei einer Komponente durch WFP geschützt ist und diese Schlüsseldatei bereits installiert ist, aktualisiert das Installationsprogramm die Komponente nur, wenn die Version der Schlüsseldatei im Paket höher als die installierte Version ist. Wenn das Installationspaket angibt, dass eine Komponente installiert werden soll und die Schlüsseldatei der Komponente derzeit nicht installiert ist, installiert das Installationsprogramm die Komponente unabhängig davon, ob die Schlüsseldatei geschützt ist. Sobald eine Komponente installiert ist, deren Schlüsseldatei durch WFP geschützt ist, wird sie dauerhaft installiert und das Installationsprogramm wird die Komponente niemals entfernen oder ersetzen.

Installation von Assemblys durch WFP

WFP für Assemblys unterscheidet sich von WFP für Systemdateien.

WFP schützt Systemdateien von Windows Server 2003-, Windows XP- und Windows 2000, indem Versuche erkannt werden, geschützte Systemdateien zu ersetzen. Dieser Schutz wird ausgelöst, wenn WFP eine Verzeichnisänderungsbenachrichtigung für eine Datei in einem geschützten Verzeichnis empfängt. Wenn WFP diese Benachrichtigung erhält, wird bestimmt, welche Datei geändert wurde. Wenn die Datei geschützt ist, sucht WFP die Dateisignatur in einer statischen Katalogdatei, um zu ermitteln, ob die neue Datei die richtige Version ist. Wenn die Dateiversion nicht korrekt ist, ersetzt das System die Datei durch die richtige Version aus dem Cache oder dem Verteilungsmedium.

WFP für Assemblys ist hingegen dynamisch. WFP wird auf Dateien ausgeweitet, wenn sie dem gemeinsam genutzten parallelen Assemblycache hinzugefügt werden. Wenn eine Assembly beschädigt wird, fordert WFP das Installationsprogramm auf, die Datei zu ersetzen. Windows Installer kann die Datei möglicherweise ersetzen, je nachdem, ob auf das Quellpaket zugegriffen werden kann. Wenn auf das Quellpaket nicht zugegriffen werden kann, erstellt WFP ein Dialogfeld mit dem Hinweis, dass die Datei nicht wiederhergestellt werden kann.

Beachten Sie, dass nicht verwaltete gemeinsam genutzte parallele Assemblys, die unter %windir%\winsxs installiert sind, durch WFP geschützt werden. Nicht verwaltete private Assemblys, die im Anwendungsverzeichnis installiert sind, werden nicht durch WFP geschützt. Verwaltete globale Assemblys, die im Anwendungsverzeichnis oder unter %windir%\assembly\gac installiert sind, werden nicht durch WFP geschützt.

Windows Resource Protection