Patchpakete
Ein Windows Installer-Patch (MSP-Datei) ist eine Datei, die zum Bereitstellen von Updates für Windows Installer-Anwendungen verwendet wird. Der Patch ist ein eigenständiges Paket, das alle zum Aktualisieren der Anwendung erforderlichen Informationen enthält. Ein Patchpaket (MSP-Datei) kann wesentlich kleiner als das Windows Installer-Paket (.msi Datei) für die gesamte aktualisierte Anwendung sein. Weitere Informationen zum Bereitstellen kleinerer Updates für Anwendungen finden Sie unter Reduzieren der Patchgröße.
Ein Patchpaket enthält die tatsächlichen Updates für die Anwendung und beschreibt, welche Versionen der Anwendung den Patch erhalten können. Patches enthalten mindestens zwei Datenbanktransformationen. Eine Transformation aktualisiert die Informationen in der Installationsdatenbank der Anwendung. Die andere Transformation fügt Informationen hinzu, die das Installationsprogramm zum Patchen von Dateien verwendet. Das Installationsprogramm verwendet die von den Transformationen bereitgestellten Informationen, um Patchdateien anzuwenden, die im Cab-Dateidatenstrom des Patchpakets gespeichert sind. Ein Patchpaket verfügt nicht über eine Datenbank wie ein Installationspaket (.msi Datei).)
Ab Windows Installer Version 3.0 können Patchpakete Informationen enthalten, die die Patchsequenz für den Patch relativ zu anderen Updates in der MsiPatchSequence Tabelle und zusätzliche beschreibende Informationen in der MsiPatchMetadata- Tabelle beschreiben.
Benutzer können Anwendungen und Updates aus einem Netzwerkadministratorimage installieren. Obwohl Patchpakete auf Administrative Installationen angewendet werden können, besteht die empfohlene Methode zum Bereitstellen von Updates darin, dass Benutzer die ursprüngliche Anwendung installieren und dann die Patches auf die lokale Instanz der Anwendung auf ihren Computer anwenden. Dadurch werden Benutzer mit dem Administrativen Image synchronisiert. Wenn ein Patch auf die Administratorinstallation angewendet wird, müssen alle Clients dieser Administratorinstallation die Anwendung neu zwischenspeichern und erneut installieren, um das Update zu erhalten. Bis ein Benutzer neu zwischenspeichert und neu installiert, kann der Benutzer keine Installationen bei Bedarf installieren und reparieren, die von der gepatchten Administratorinstallation stammen.
Ab Windows Installer 3.0 können Nichtadministratoren Patches auf vom Benutzer verwaltete Anwendungen anwenden, nachdem der Patch von einem Administrator als vertrauenswürdig genehmigt wurde. Weitere Informationen dazu finden Sie unter Patching Per-User Managed Applications. Eine weitere Methode besteht darin, das Patchen von Am wenigsten privilegierten Benutzerkonten zu verwenden.
Anmerkung
Wenn die richtlinie AllowLockdownPatch festgelegt wurde, können Nichtadministratorbenutzer einen Patch auf eine vorhandene Anwendung anwenden, während eine Installation mit erhöhten Rechten ausgeführt wird. Diese Methode wird nicht empfohlen, da nicht vertrauenswürdige Patches auf eine Anwendung angewendet werden können, die mit erhöhten Rechten ausgeführt werden kann.
Patchpakete bestehen aus den folgenden Teilen. Weitere Informationen zum Erstellen von Patchpaketen finden Sie unter Erstellen eines Patchpakets.
Zusammenfassungsinformationsstream
Der Zusammenfassungsinformationsstrom des Patchpakets enthält Informationen über die Identität und den Zweck des Patches.
Der Zusammenfassungsinformationsdatenstrom enthält mindestens folgendes:
- Eine GUID, die den Patch eindeutig identifiziert. Die GUID für diesen Patch wird mit einer Liste von GUIDs für frühere Patches angefügt, die durch diesen Patch ersetzt werden.
- Eine durch Semikolons getrennte Liste der Produktcodes für gültige Ziele für diesen Patch.
- Eine durch Semikolons getrennte Liste der Transformationsunterstoragenamen in der Reihenfolge, in der sie verarbeitet werden sollen.
- Eine durch Semikolons getrennte Liste der Quellen für diesen Patch.
Transformieren des Unterspeichers
Ein Patchpaket enthält Transformationen, die Dateien, Registrierungseinträge, Benutzeroberflächen und Anpassungen hinzufügen oder entfernen können. Transformationen sind als Unterspeicher im Paket enthalten. Ein Patchpaket enthält zwei Transformationen für jede Zieldatenbank. Eine Transformation ist die tatsächliche Aktualisierung der Installationsdatenbank und wird aus den Unterschieden zwischen den ursprünglichen und aktualisierten Images des Installationspakets generiert. Die andere Transformation fügt Einträge zum Patch, PatchPackage, Media, InstallExecuteSequenceund AdminExecuteSequence Tabellen hinzu. Informationen im Unterspeicher binden sie an eine bestimmte UpgradeCode, ProductCode, ProductVersionund ProductLanguage. Ein Patchpaket, das auf mehrere Ziele angewendet werden kann, enthält mehrere Paare dieser Transformationen.
Cab File Stream
Der in einem Patch enthaltene Cab-Dateidatenstrom kann die folgenden Dateitypen enthalten:
- Patchdateien, die die erforderlichen Informationen enthalten, um die alte Version der Datei in die neue Version zu ändern. Eine einzelne Patchdatei kann verwendet werden, um eine oder mehrere alte Versionen einer Datei zu aktualisieren.
- Zusätzliche Dateien, die der Anwendung hinzugefügt werden, die in der alten Version nicht vorhanden sind.
- Eine gesamte Ersetzungsdatei. In dem seltenen Fall, in dem die neue Version einer Datei kleiner als der Patch ist, der zum Aktualisieren der alten Version dieser Datei erforderlich ist, kann die neue Datei vollständig enthalten sein. Dies sind neue Dateien, die über ihre alten Versionen installiert werden.
Verwandte Themen