Στον Οδηγό λύσης πακέτου πρόσβασης, το πεδίο UpgradeCode χρησιμοποιείται κυρίως για την υποστήριξη σημαντικών αναβαθμίσεων, παρόλο που μικρές και μικρές ενημερώσεις ενδέχεται να χρησιμοποιούν το UpgradeCode για επικύρωση προϊόντος. Κατά τη διάρκεια σημαντικών αναβαθμίσεων, οι ενέργειες FindRelatedProducts, MigrateFeatureStates και RemoveExistingProducts εντοπίζουν, μετεγκαθίστανται και καταργούν προηγούμενες εκδόσεις του προϊόντος. Η ενέργεια FindRelatedProducts αναζητά προϊόντα χρησιμοποιώντας κριτήρια που βασίζονται στο UpgradeCode, το ProductLanguage και το ProductVersion. Αυτά τα κριτήρια καθορίζονται στον πίνακα Αναβάθμιση.
Δεδομένων των κριτηρίων που χρησιμοποιούνται από την ενέργεια FindRelatedProducts , το UpgradeCode μπορεί να είναι το ίδιο για διαφορετικές γλώσσες και εκδόσεις ενός μόνο προϊόντος. Αυτό συμβαίνει επειδή ο πίνακας "Αναβάθμιση" επιτρέπει τη διαφοροποίηση μεταξύ των προϊόντων κατά μήκος των γραμμών έκδοσης και γλώσσας.
Σε διαφορετικές εκδόσεις του ίδιου προϊόντος, ίσως να μην χρειαστεί ποτέ να αλλάξετε τον Κωδικό αναβάθμισης. Κάθε μεμονωμένο προϊόν θα πρέπει να έχει το δικό του UpgradeCode. Μια οικογένεια προγραμμάτων προϊόντων θα πρέπει επίσης να έχει το δικό της UpgradeCode. Με αυτόν τον τρόπο, η οικογένεια προγραμμάτων μπορεί να αναβαθμίσει προηγούμενες εκδόσεις της οικογένειας προγραμμάτων ή μεμονωμένων προϊόντων, χρησιμοποιώντας πολλές γραμμές στον πίνακα "Αναβάθμιση".
Τα παρακάτω δύο σενάρια δείχνουν τη χρήση του Κώδικα αναβάθμισης.
-
Το προϊόν Α και το προϊόν Β κυκλοφόρησαν με το ίδιο ProductLanguage, ProductVersion και UpgradeCode. Το προϊόν Α και το προϊόν Β έχουν διαφορετικούς κωδικούς προϊόντος. Επειδή στα προϊόντα έχει εκχωρηθεί ο ίδιος Κωδικός αναβάθμισης, δεν είναι δυνατή η δημιουργία του πίνακα Αναβάθμιση για να διαφοροποιηθεί η παλαιότερη έκδοση του Προϊόντος Α από την παλαιότερη έκδοση του Προϊόντος B. Σε αυτήν την περίπτωση, δεν θα είναι δυνατή η εγκατάσταση αναβάθμισης του Προϊόντος Α που παραβλέπει το Προϊόν B. Επειδή αυτά ήταν διαφορετικά προϊόντα, θα έπρεπε να τους έχει εκχωρηθεί διαφορετικός Κωδικός αναβάθμισης.
-
Οι αγγλικές και γαλλικές εκδόσεις του προϊόντος Α κυκλοφόρησαν με το ίδιο ProductVersion και UpgradeCode. Τόσο η αγγλική όσο και η γαλλική έκδοση του προϊόντος Α έχουν διαφορετικές εκδόσεις ProductLanguages και ProductCodes. Παρόλο που και οι δύο εκδόσεις της αγγλικής και της γαλλικής γλώσσας έχουν την ίδια UpgradeCode, μπορείτε να συντάξετε τον πίνακα Αναβάθμιση έτσι ώστε να εντοπίζεται και να αναβαθμίζεται μόνο η παλαιότερη έκδοση στα Αγγλικά και να παραβλέπεται η παλαιότερη γαλλική έκδοση. Οι διαφορετικές εκδόσεις γλώσσας ενός προϊόντος μπορούν να χρησιμοποιούν τον ίδιο Κωδικό αναβάθμισης.