Udostępnij za pośrednictwem


Zmienianie kodu produktu

Kod produktu to identyfikator GUID, który jest główną identyfikacją aplikacji lub produktu. Zobacz Kody produktów.

Aktualizacja zgodna z poniższymi wytycznymi zwykle nie wymaga zmiany kodu produktu i może być obsługiwana jako mała aktualizacjalub jeśli wersja ma zostać zmieniona, jako uaktualnienia pomocniczego:

  • Aktualizacja może powiększyć lub zmniejszyć drzewo składników funkcji, ale nie może zreorganizować istniejącej hierarchii funkcji i składników opisanych przez Feature i FeatureComponents tabel. Może dodać nową funkcję do istniejącego drzewa składników funkcji. Jeśli usunie funkcję nadrzędną, musi również usunąć wszystkie funkcje podrzędne usuniętej funkcji.
  • Aktualizacja może dodać nowy składnik do nowej lub istniejącej funkcji.
  • Aktualizacja nie może zmieniać kodu żadnego składnika. W związku z tym niewielka aktualizacja lub drobne uaktualnienie nigdy nie może zmienić nazwy pliku klucza składnika, ponieważ wymagałoby to zmiany kodu składnika.
  • Aktualizacja nie może zmienić nazwy pliku .msi pakietu instalacyjnego. Zamiast tego, ponieważ modyfikuje pakiet, należy zmienić kod pakietu. Należy pamiętać, że aktualizacja może zmieniać tabele, akcje niestandardowe i okna dialogowe w pliku .msi bez zmiany nazwy pliku.
  • Aktualizacja może dodawać, usuwać lub modyfikować pliki, klucze rejestru lub skróty składników, które nie są współużytkowane przez co najmniej dwie funkcje. Jeśli aktualizacja modyfikuje plik z wersją, wersja tego pliku musi zostać zwiększona w tabeli File. Jeśli aktualizacja usunie zasoby, powinna również zaktualizować RemoveFile i RemoveRegistry tabele, aby usunąć wszystkie nieużywane pliki, klucze rejestru lub skróty, które zostały już zainstalowane.
  • Aktualizacja składnika współdzielonego przez co najmniej dwie funkcje musi być wstecznie kompatybilna ze wszystkimi aplikacjami i funkcjami korzystającymi z tego składnika. Aktualizacja może modyfikować zasób udostępnionego składnika, takiego jak pliki, wpisy rejestru i skróty, o ile zmiany są zgodne z poprzednimi wersjami. Nie zaleca się, aby aktualizacja dodawała lub usuwała pliki, wpisy rejestru lub skróty z udostępnionego składnika.
  • Niewielka aktualizacja jest dostarczana jako pakiet poprawek Instalatora Windows. (Pełna wersja produktu CD-ROM zazwyczaj nie jest uwzględniana przy małej aktualizacji).

Kod produktu należy zmienić, jeśli którakolwiek z poniższych wartości jest prawdziwa dla aktualizacji:

  • Współistniejące instalacje zarówno oryginalnych, jak i zaktualizowanych produktów w tym samym systemie muszą być możliwe.
  • Nazwa pliku .msi została zmieniona.
  • Kod istniejącego składnika uległ zmianie.
  • Składnik jest usuwany z istniejącej funkcji.
  • Istniejąca funkcja stała się teraz podrzędną częścią istniejącej funkcji.
  • Istniejąca funkcja podrzędna została usunięta z funkcji nadrzędnej.

Należy pamiętać, że dodanie nowej funkcji podrzędnej składającej się całkowicie z nowych składników do istniejącej funkcji nie wymaga zmiany kodu produktu.

Nowe funkcje podrzędne można tworzyć, włączając element msidbFeatureAttributesFollowParent i msidbFeatureAttributesUIDisallowAbsent w polu Atrybuty tabeli funkcji . Jeśli uaktualnienie pomocnicze dodaje tylko nowe funkcje podrzędne, funkcja REINSTALL=ALL wystarczy, aby wymusić instalację nowych funkcji podrzędnych. Aby uzyskać więcej informacji, zobacz Kontrolowanie stanów wyboru funkcji.

Nowa funkcja podrzędna może zostać ukryta przed użytkownikiem. Aby zsynchronizować stan instalacji nowej funkcji podrzędnej z jej funkcją nadrzędną, ustaw bity msidbFeatureAttributesFollowParent i msidbFeatureAttributesUIDisallowAbsent dla funkcji podrzędnej.

O właściwościach

przy użyciu właściwości

dokumentacja właściwości