Zmniejszenie rozmiaru łatki
Począwszy od wersji 3.0 Instalatora Windows, autorzy poprawek mogą używać przechowywanej przez instalatora bazowej konfiguracji produktu, aby łatwiej serwisować aplikacje za pomocą mniejszych poprawek różnicowych. W wielu przypadkach łatka delta, dostarczająca informacje serwisowe dla aplikacji, może być znacznie mniejsza niż pełny plik poprawki lub paczki instalacyjnej, dostarczającej te same informacje.
Instalator Windows 2.0: Nieobsługiwany. Począwszy od Instalatora Windows 3.0 instalator selektywnie zapisuje informacje o plikach odniesienia podczas ich aktualizowania.
Instalator Windows udostępnia trzy metody aktualizowania i obsługi aplikacji: małych aktualizacji, drobnych uaktualnieńi głównych uaktualnień. Mała aktualizacja jest również nazywana aktualizacją szybkiej poprawki (QFE), a drobne uaktualnienie jest również określane jako aktualizacja dodatku Service Pack (SP). Typowe uaktualnienie główne usuwa poprzednią aplikację i instaluje nową aplikację. Instalator Windows może dostarczać informacje o obsłudze aplikacji jako pakiet instalacyjny (plik.msi) lub jako pakiet poprawek (plik msp).
Pakiet poprawek Instalatora Windows, który dostarcza informacje o obsłudze dla małej aktualizacji lub uaktualnienia pomocniczego, jest zazwyczaj znacznie mniejszy niż równoważny pakiet instalacyjny, który dostarcza te same informacje o obsłudze. Zaleca się, aby pakiety poprawek były używane do dystrybucji małych i drobnych uaktualnień. Zaleca się, aby pakiet instalacyjny był używany do dystrybucji uaktualnienia głównego.
Poprawki Instalatora Windows (pliki msp) można wygenerować na podstawie pełnych plików lub różnic w plikach (nazywanych również różnicami plików). Poprawka Instalatora Windows wygenerowana na podstawie różnic plików może być znacznie mniejsza niż równoważna poprawka pełnego pliku. Wszystkie wersje Instalatora Windows mogą używać poprawek pełnych plików lub poprawek różnicowych.
Począwszy od Instalatora Windows w wersji 3.0 instalator selektywnie zapisuje informacje o plikach odniesienia podczas ich aktualizowania. Informacje na temat oryginalnej aplikacji podstawowej (wersji RTM) i najnowszego uaktualnienia pomocniczego (dodatku Service Pack) są zapisywane w prywatnej lokalizacji, gdy aplikacja jest zainstalowana lub otrzymuje drobne uaktualnienie.
Instalator wykonuje następujące czynności, aby zminimalizować rozmiar pamięci podręcznej punktu odniesienia:
- Dla każdej aplikacji utrzymywane są maksymalnie dwa wersje bazowe: wersja bazowa pliku jako pierwotnie wydana (RTM) i wersja bazowa pliku podczas najnowszej drobnej aktualizacji (Service Pack).
- Plik nie jest dodawany do pamięci podręcznej, dopóki nie zostanie poprawiony. Pamięć podręczna punktu odniesienia to kopiowanie na zapis.
- Jeśli aplikacja nigdy nie została zaktualizowana, w pamięci podręcznej punktu odniesienia nie ma żadnych plików.
- Kiedy ostatnia aktualizacja aplikacji była drobnym uaktualnieniem (dodatkiem Service Pack), aplikacja jest na poziomie bazowym, a na komputerze mogą znajdować się co najwyżej dwie kopie pliku. Jedna kopia pliku znajduje się w katalogu docelowym instalacji. Druga kopia może znajdować się w pamięci podręcznej punktu odniesienia RTM.
- Gdy ostatnia obsługa aplikacji polegała na małej aktualizacji (QFE), aplikacja nie znajduje się na poziomie bazowym, a na komputerze mogą być obecne co najwyżej trzy kopie pliku. Pierwsza kopia pliku znajduje się w katalogu docelowym instalacji. Druga kopia pliku znajduje się w pamięci podręcznej bazowej RTM. Ostatnia kopia pliku znajduje się w najnowszej pamięci podręcznej punktu odniesienia.
- Pamięć podręczna punktu odniesienia aplikacji jest usuwana po odinstalowaniu produktu.
Od wersji 3.0 Instalatora Windows, instalator może korzystać z pamięci podręcznej bazowej, gdy poprawki są stosowane do aplikacji. Informacje o punkcie odniesienia mogą służyć do stosowania poprawki różnicowej lub przywracania pliku do poprzedniej wersji podczas odinstalowywania poprawek. Dzięki temu autorzy poprawek mogą korzystać z mniejszych łatek różnicowych. Jeśli instalator wykryje, że nie można zastosować łatki różnicowej do docelowego pliku, instalator może podjąć próbę użycia pliku zapisanego w pamięci podręcznej punktu odniesienia jako punkt początkowy. Instalator tylko ucieka się do żądania oryginalnego źródła instalacji po wypróbowaniu wszystkich możliwości w pamięci podręcznej.
Przestrzeganie poniższych wytycznych może pomóc autorom poprawek używać poprawek Instalatora Windows w wersji 3.0 oraz pamięci podręcznej bazowej do tworzenia mniejszych poprawek różnicowych.
- Poprawki autorskie, które zawierają tabelę MsiPatchSequence . Ta tabela jest potrzebna do korzystania z podstawowej pamięci podręcznej i jest dostępna od wersji 3.0 Instalatora Windows.
- Nie ustawiaj zasad, które uniemożliwiają cache’owanie bazowe. Wartość polityki MaxPatchCacheSize określa maksymalny procent miejsca na dysku, który może być używany. Jeśli zasada MaxPatchCacheSize jest ustawiona na 0, żadne dodatkowe pliki nie są zapisywane w podstawowej pamięci podręcznej. Jeśli zasady nie są ustawione, domyślnie można użyć maksymalnie 10% miejsca na dysku. Jeśli całkowity rozmiar pamięci podręcznej osiągnie maksymalny procent miejsca na dysku, nie zostaną zapisane żadne dodatkowe pliki. Zasady nie mają wpływu na pliki, które zostały już zapisane. Nawet w przypadku wyłączenia buforowania instalator może używać istniejących pamięci podręcznych bazowych wersji produktu.
- Jeśli pierwsza zastosowana poprawka zawiera tabeli MsiPatchSequence, buforowanie jest włączone dla aplikacji.
- Jeśli jakakolwiek poprawka w transakcji obsługi nie zawiera tabeli MsiPatchSequence, buforowanie jest włączone dla aplikacji tylko wtedy, gdy do produktu zostanie pomyślnie zastosowana pomocnicza poprawka uaktualnienia (Service Pack), która zawiera tabelę MsiPatchSequence.
- Wygeneruj pakiet poprawek przy użyciu narzędzi do tworzenia poprawek, takich jak Msimsp.exe i PATCHWIZ.DLL.
- Zawsze kieruj poprawki do wersji RTM aplikacji lub wersji mniejszej aktualizacji (pakietu service pack) aplikacji. Obiekty docelowe określone w tabeli TargetImages pliku Właściwości tworzenia poprawek (PCP) powinny być punktami kontrolnymi produktu zdefiniowanymi przez pierwsze trzy pola właściwości ProductVersion.
- Nigdy nie celuj poprawek w małe obrazy aktualizacji. Cele tworzenia poprawki nie powinny zawierać poprzednich małych obrazów uaktualniania aktualizacji.