Regler för filversion
Kärnan i alla installationsprogram är den faktiska installationen av filer. Att avgöra om en fil ska installeras är en komplex process. På den högsta nivån beror den här bestämningen på om komponenten som en fil tillhör har markerats för installation. När du har fastställt att en fil ska kopieras är processen komplicerad om det finns en annan fil med samma namn i målmappen. I sådana situationer kräver fastställandet en uppsättning regler som omfattar följande egenskaper:
- Version
- Datum
- Språk
Installationsprogrammet använder endast dessa regler när du försöker installera en fil på en plats som redan innehåller en fil med samma namn. I det här fallet använder Windows Installer följande regler, vid lika övriga förhållanden, för att avgöra ifall installationen ska utföras.
Högsta version vinner – Om allt annat är lika, vinner filen med den högsta versionen, även om det är filen på datorn som har den versionen.
Versionerade filer vinner – En versionerad fil installeras över en icke-versionerad fil.
Favor Product Language – Om filen som installeras har ett annat språk än filen på datorn, föredrar du filen med det språk som matchar den produkt som installeras. Språkneutrala filer behandlas som bara ett annat språk så att produkten som installeras gynnas igen.
Felmatchade flera språk – När du har räknat ut alla vanliga språk mellan filen som installeras och filen på datorn, prioriteras alla återstående språk efter vad som krävs av produkten som installeras.
Bevara filen för flerspråkigt stöd – Bevara filen som stödjer flera språk, oavsett om den redan finns på datorn eller håller på att installeras.
Icke-versionerade filer är användardata – Om ändringsdatumet är senare än skapatdatumet för filen på datorn ska du inte installera filen eftersom användaranpassningar tas bort. Om datumen Ändrad och Skapa är desamma installerar du filen. Om datumet för att skapa är senare än datumet Ändrad anses filen vara oförändrad. Installera filen.
Installationen av en Companion File beror inte på dess egen filversionsinformation, utan på versionshantering av den överordnade filen. När det gäller Companion Files hoppar installationen över bara om huvudfilen har en högre version. Observera att en fil som är nyckelsökvägen för komponenten inte får vara en tillhörande fil eftersom detta resulterar i versionslogik för nyckelsökvägsfilen som bestäms av den överordnade filen.
Icke-versionerade filer som använder Companion Files- En icke-versionerad fil som är associerad med en versionerad fil med hjälp av kompanjonsmekanismen följer bestämmelserna för den versionerade filen. Det enda undantaget är om den versionerade filen på datorn och den version av filen som installeras har samma version och språk, men den tillhörande filen saknas på datorn. I det här fallet används den tilläggsfil som installeras, även om den versionshanterade filen på datorn också används. Dessutom installeras en icke-versionsfil med hjälp av en tilläggsfil om egenskapen REINSTALLMODE innehåller alternativen för att skriva över äldre versioner ("o" eller "e") och den tillhörande filens version är lika med en fil som redan finns på datorn.
Regler är globala – Reglerna för att avgöra när en fil ska installeras finns på en plats i installationsprogrammet och är globala, vilket innebär att de gäller för alla filer på samma sätt.
Exempel på det format som används för filversioner finns i datatypen Version. Mer specifik information finns i Ersätta befintliga filer eller standardfilversionshantering.