In de wizard Toegangsoplossing is het veld productcode een GUID die de principal-identificatie van een toepassing of product is.
-
Met de update kan de structuur van de onderdelen worden vergroot of verkleind, maar de bestaande hiërarchie van functies en onderdelen die worden beschreven in de tabellen Feature en FeatureComponents, mag niet opnieuw worden ingedeeld. Hiermee kan een nieuwe functie worden toegevoegd aan de bestaande structuur van het onderdeel. Als hiermee een bovenliggende functie wordt verwijderd, moeten ook alle onderliggende functies van de verwijderde functie worden verwijderd.
-
De update kan een nieuw onderdeel of een nieuwe of bestaande functie toevoegen.
-
De update mag de onderdeelcode van een onderdeel niet wijzigen. Daarom mag een kleine update of secundaire upgrade nooit de naam van het sleutelbestand van een onderdeel wijzigen, omdat hiervoor de onderdeelcode moet worden gewijzigd.
-
De update mag de naam van het .msi-bestand van het installatiepakket niet wijzigen. Omdat het pakket hiermee wordt gewijzigd, moet de pakketcode worden gewijzigd. Houd er rekening mee dat de update de tabellen, aangepaste acties en dialoogvensters in het .msi-bestand kan wijzigen zonder de naam van het bestand te wijzigen.
-
De update kan bestanden, registersleutels of snelkoppelingen van onderdelen die niet worden gedeeld door twee of meer functies toevoegen, verwijderen of wijzigen. Als de update een bestand met versiebeheer wijzigt, moet de versie van dat bestand worden verhoogd in de tabel Bestand. Als de update resources verwijdert, moeten ook de tabellen RemoveFile en RemoveRegistry worden bijgewerkt om ongebruikte bestanden, registersleutels of snelkoppelingen te verwijderen die al zijn geïnstalleerd.
-
De update van een onderdeel dat wordt gedeeld door twee of meer functies, moet achterwaarts compatibel zijn met alle toepassingen en functies die gebruikmaken van het onderdeel. De update kan de resource van een gedeeld onderdeel, zoals bestanden, registervermeldingen en snelkoppelingen, wijzigen, zolang de wijzigingen achterwaarts compatibel zijn. Het wordt afgeraden dat de update bestanden, registervermeldingen of snelkoppelingen uit een gedeeld onderdeel toevoegt of verwijdert.
-
Een kleine update wordt verzonden als een Windows Installer-pakket. (Een volledige product-cd-rom wordt meestal niet geleverd met een kleine update.)
De productcode moet worden gewijzigd als aan een van de volgende voorwaarden voor de update wordt voldaan:
-
Gelijktijdige installaties van zowel originele als bijgewerkte producten op hetzelfde systeem moeten mogelijk zijn.
-
De naam van het .msi-bestand is gewijzigd.
-
De onderdeelcode van een bestaand onderdeel is gewijzigd.
-
Een onderdeel wordt verwijderd uit een bestaande functie.
-
Van een bestaande functie is een onderliggend onderdeel gemaakt.
-
Een bestaande onderliggende functie is verwijderd uit de bovenliggende functie.
-
Een onderdeel kan worden toegevoegd aan een bestaande functie zonder dat een productcode hoeft te worden gewijzigd.
Opmerking: Als u een nieuwe onderliggende functie toevoegt aan een bestaande functie, die volledig uit nieuwe onderdelen bestaat, hoeft u de productcode niet te wijzigen.
Nieuwe onderliggende functies kunnen worden gemaakt door msidbFeatureAttributesFollowParent en msidbFeatureAttributesUIDisallowAbsent in het veld Kenmerken van de tabel Functie op te gaan. Als de secundaire upgrade alleen nieuwe onderliggende functies toevoegt, is REINSTALL=ALL voldoende om de installatie van de nieuwe onderliggende functies af te dwingen.
Een nieuwe onderliggende functie is mogelijk verborgen voor de gebruiker. Als u de installatiestatus van een nieuwe onderliggende functie wilt synchroniseren met de bovenliggende functie, stelt u de bits msidbFeatureAttributesFollowParent en msidbFeatureAttributesUIDisallowAbsent in voor de onderliggende functie.