Partager via


Installation de plusieurs instances avec des transformations d’instance

Cette rubrique fournit des instructions pour l'installation ou la réinstallation d'une installation à instances multiples qui utilise des transformations d'instance.

  • Lors de l’installation d’une nouvelle instance avec une transformation d’instance, incluez la propriété MSINEWINSTANCE et définissez MSINEWINSTANCE=1.
  • Lors de l’installation d’une nouvelle instance avec une transformation d’instance, incluez la propriété TRANSFORMS et définissez la première transformation dans la liste des transformations sur la transformation d’instance qui modifie le code du produit. Toute transformation de personnalisation doit suivre la transformation d’instance au début de cette liste.
  • Le moyen le plus simple de lancer une installation de maintenance et de réinstaller une instance est de référencer le code de produit de l’instance. Si vous lancez l’installation de maintenance à l’aide du chemin d’accès du package, vous devez également spécifier le code de produit de l’instance. À partir de la ligne de commande, utilisez l’option /n {Product Code}. À partir du code ou du script, utilisez la propriété MSIINSTANCEGUID .

L’exemple suivant illustre l’installation d’une nouvelle instance à partir d’une ligne de commande où la transformation instance est précédée d’un signe deux-points qui spécifie que la transformation est incorporée dans le package.

msiexec /I mypackage.msi TRANSFORMS=:instance.mst MSINEWINSTANCE=1 /qb

L’exemple suivant montre l’installation d’une nouvelle instance à l’aide de MsiInstallProduct.

UINT uiStat = MsiInstallProduct(_T("path to mypackage.msi"), _T("TRANSFORMS=:instance.mst MSINEWINSTANCE=1"));

L’exemple suivant montre l’installation de la nouvelle instance à partir d’un script.

Dim Installer As Object
Set Installer = CreateObject("WindowsInstaller.Installer")
Installer.InstallProduct "path to mypackage.msi", "TRANSFORMS=:instance.mst MSINEWINSTANCE=1"

L’exemple suivant réinstalle un instance sans re-mettre en cache le package. L’instance est référencée par son code {00000001-0002-0000-0000-624474736554}de produit .

msiexec /I {00000001-0002-0000-0000-624474736554} REINSTALL=ALL REINSTALLMODE=omus /qb

L’exemple suivant réinstalle une instance et remet en cache le package à partir de la ligne de commande. L’instance est référencé par le chemin du package. Vous devez uniquement inclure l’option /n {Code de produit} si le produit est installé à l’origine avec une transformation d’instance.

msiexec /I c:\newpath\mypackage.msi /n {00000001-0002-0000-0000-624474736554} REINSTALL=ALL REINSTALLMODE=vomus /qb

L’exemple suivant réinstalle une instance et met en cache le package à l’aide de MsiInstallProduct. L’instance est référencé par le chemin du package. Utilisez la propriété MSIINSTANCEGUID pour fournir le code de produit de l’instance.

UINT uiStat = MsiInstallProduct(_T("path to mypackage.msi"), _T("MSIINSTANCEGUID={00000001-0002-0000-0000-624474736554}  REINSTALL=ALL REINSTALLMODE=vomus"));

L’exemple suivant réinstalle une instance et met en cache le package à l’aide d’un script. Utilisez la propriété MSIINSTANCEGUID pour fournir le code de produit de l’instance.

Dim Installer As Object
Set Installer = CreateObject("WindowsInstaller.Installer")
Installer.InstallProduct "path to mypackage.msi", "MSIINSTANCEGUID={00000001-0002-0000-0000-624474736554}  REINSTALL=ALL REINSTALLMODE=vomus"

L’exemple suivant montre comment publier une instance à l’aide de la ligne de commande.

msiexec /jm mypackage.msi /t :instance.mst /c /qb

L’exemple suivant montre comment installer pour publier une instance à l’aide de MsiAdvertiseProductEx.

UINT uiStat = MsiAdvertiseProductEx(_T("path to mypackage.msi"), NULL, _T(":instance.mst"), 0, 0, MSIADVERTISEOPTIONS_INSTANCE);

L’exemple suivant montre comment appliquer un correctif à une instance à partir d’une ligne de commande. Vous devez uniquement inclure l’option /n {Code produit} si le produit a été installé à l’origine avec une transformation d’instance.

msiexec /p mypatch.msp /n {00000001-0002-0000-0000-624474736554} /qb

L’exemple suivant montre comment appliquer un correctif à une installation d’instance à l’aide de MsiApplyPatch.

UINT uiStat = MsiApplyPatch(_T("path to mypatch.msp"), _T("{00000001-0002-0000-0000-624474736554}"), INSTALLTYPE_SINGLE_INSTANCE, _T("REINSTALL=ALL REINSTALLMODE=omus"));

Pour plus d’informations, consultez Installation de plusieurs instances de produits et de correctifs et Installation de plusieurs instances avec des transformations d’instance.