MigrateFeatureStates Eylemi
MigrateFeatureStates eylemi, yükseltme sırasında ve ilgili bir uygulama üzerinden yeni bir uygulama yüklenirken kullanılır. MigrateFeatureStates, mevcut uygulamadaki özellik durumlarını okur ve ardından bu özellik durumlarını bekleyen yüklemede ayarlar. yöntemi yalnızca yeni özellik ağacı özgün ağaçtan büyük ölçüde değişmediğinde kullanışlıdır.
MigrateFeatureStates eylemi yalnızca ürün ilk yüklendiğinde çalışır. MigrateFeatureStates eylemi bakım modu veya kaldırma sırasında çalışmaz.
MigrateFeatureStates eylemi, Yükseltme tablosunun her kaydında sırayla çalışır ve her satırdaki yükseltme kodunu, ürün sürümünü ve dili sistemde yüklü olan tüm ürünlerle karşılaştırır. MigrateFeatureStates eylemi bir yazışma algılarsa ve Yükseltme tablosunun Öznitelikler sütununda msidbUpgradeAttributesMigrateFeatures bit bayrağı ayarlanırsa, yükleyici ürün için mevcut özellik durumlarını sorgular ve bu durumları yeni uygulamada aynı özellikler için ayarlar. Eylem yalnızca Önceden Seçilmiş özelliği ayarlanmadıysa özellik durumlarını geçirir.
Sıra Kısıtlamaları
MigrateFeatureStates eylemi, CostFinalize eylemihemen sonra gelmelidir. MigrateFeatureStates, hem InstallUISequence tablosu hem de InstallExecuteSequence tablosundasıralanmalıdır. Eylem InstallUISequence içinde zaten çalıştırılmışsa yükleyici, MigrateFeatureStates'in InstallExecuteSequence içinde çalışmasını engeller.
ActionData İletileri
MigrateFeatureSettings, her ürün için bir eylem veri iletisi gönderir.
Açıklamalar
Birden fazla yüklü ürün bir özelliği paylaşıyorsa, bu özelliğin yükleme durumu ürünler arasında farklılık gösterebilir. MigrateFeatureState eylemi, özellik yükleme durumlarını geçirirken şu öncelik sırasını kullanır: yerel çalıştır, kaynaktan çalıştır, tanıtıldı ve kaldırıldı. Örneğin, yüklü A ürününde INSTALLSTATE_LOCAL olarak Y özelliği ve yüklü B ürünü INSTALLSTATE_ABSENT olarak Y özelliğine sahip olabilir. Yükseltme C ürününü yükler ve Y özelliğinin yükleme durumunu geçirirse, MigrateFeatureState C ürünündeki Y özelliğinin yükleme durumunu INSTALLSTATE_LOCAL olarak ayarlar.
Ürün yükseltmeleri için MigrateFeatureStates eylemini kullanma hakkında daha fazla bilgi için bkz. Gelecekteki Birincil Yükseltmeler için Uygulama Hazırlama.