באשף Access Solution, שדה קוד המוצר הוא GUID שהוא הזיהוי העיקרי של יישום או מוצר.
-
העדכון יכול להגדיל או להקטין את עץ רכיבי התכונות, אך אין לארגן אותו מחדש את ההירארכיה הקיימת של התכונות והרכיבים המתוארים על-ידי הטבלאות Feature ו- FeatureComponents. הוא יכול להוסיף תכונה חדשה לעץ הקיים של רכיבי תכונות. אם היא מסירה תכונת אב, היא חייבת גם להסיר את כל תכונות הצאצא של התכונה שהוסרה.
-
העדכון יכול להוסיף רכיב חדש או תכונה חדשה או קיימת.
-
העדכון אינו יכול לשנות את קוד הרכיב של רכיב כלשהו. כתוצאה מכך, עדכון קטן או שדרוג משני לעולם לא יכולים לשנות את השם של קובץ מפתח של רכיב מאחר שעדכון זה ידרוש שינוי של קוד הרכיב.
-
העדכון אינו יכול לשנות את שם הקובץ .msi של חבילת ההתקנה. במקום זאת, מאחר שהיא משנה את החבילה, היא אמורה לשנות את קוד החבילה. שים לב ש משמעות הדבר היא שהעדכון יכול לשנות את הטבלאות, הפעולות המותאמות אישית ותיבות הדו-.msi בקובץ ה- .msi מבלי לשנות את שם הקובץ.
-
העדכון יכול להוסיף, להסיר או לשנות את הקבצים, מפתחות הרישום או קיצורי הדרך של רכיבים שאינם משותפים על-ידי שתי תכונות או יותר. אם העדכון משנה קובץ מגירסה, יש לשנות את גירסת הקובץ בטבלת הקבצים. אם העדכון מסיר משאבים, עליו לעדכן גם את הטבלאות RemoveFile ו- RemoveRegistry כדי להסיר קבצים, מפתחות רישום או קיצורי דרך שכבר הותקנו שאינם בשימוש.
-
העדכון של רכיב המשותף על-ידי שתי תכונות או יותר חייב להיות תואם לאחור לכל היישומים והתכונות המשתמשים ברכיב. העדכון יכול לשנות את המשאב של רכיב משותף, כגון קבצים, ערכי רישום וקיצורי דרך, כל עוד השינויים תואמים לאחור. לא מומלץ שהעדכון יוסיף או יסיר קבצים, ערכי רישום או קיצורי דרך מרכיב משותף.
-
עדכון קטן נשלח כחבילה של Windows Installer. (תקליטור מלא של מוצר בדרך כלל אינו מסופק עם עדכון קטן.)
יש לשנות את קוד המוצר אם מתקיים אחד מהתנאים הבאים עבור העדכון:
-
התקנות דו-קיימים של מוצרים מקוריים ומעודכנים באותה מערכת חייבות להיות אפשריות.
-
שם הקובץ .msi השתנה.
-
קוד הרכיב של רכיב קיים השתנה.
-
רכיב מוסר מתכונה קיימת.
-
תכונה קיימת הפך לצאצא של תכונה קיימת.
-
תכונת צאצא קיימת הוסרה מתכונת האב שלה.
-
ניתן להוסיף רכיב לתכונה קיימת מבלי לדרוש שינוי בקוד מוצר.
הערה: הוספת תכונת צאצא חדשה, המורכבת לחלוטין מרכיבים חדשים, לתכונה קיימת אינה דורשת שינוי של קוד המוצר.
ניתן לערוך תכונות צאצא חדשות על-ידי הכללת msidbFeatureAttributesFollowParent ו- msidbFeatureAttributesUIDisallowAbsent בשדה 'תכונות' של טבלת התכונות. אם השדרוג המשני מוסיף רק תכונות צאצא חדשות, התקן מחדש=הכל מספיק כדי לכפות את ההתקנה של תכונות הצאצא החדשות.
ייתכן שתכונת צאצא חדשה מוסתרת מהמשתמש. כדי לסנכרן את מצב ההתקנה של תכונת צאצא חדשה עם תכונת האב שלה, הגדר את הסיביות msidbFeatureAttributesFollowParent ו- msidbFeatureAttributesUIDisallowAbsent עבור תכונת הצאצא.