Résumé
Cet article explique comment installer plusieurs mises à jour de produits Windows (par exemple, mises à jour critiques, correctifs de sécurité ou correctifs) qui utilisent Hotfix.exe (Microsoft Windows NT 4.0) ou Update.exe (Microsoft Windows 2000, Microsoft Windows XP ou Microsoft Windows Server 2003) avec un seul redémarrage. Cet article est destiné aux administrateurs et aux professionnels de l’informatique. Vous pouvez installer les mises à jour de produit Windows qui utilisent Hotfix.exe ou Update.exe seules ou en combinaison avec Windows (avec ou sans Service Pack).
Remarque : la procédure décrite dans cet article ne fonctionne pas pour les mises à jour de produit qui n’utilisent pas Hotfix.exe ou Update.exe comme programme d’installation. Par exemple, les mises à jour d’Internet Explorer pour Windows NT 4.0, Windows 2000 et Windows XP utilisent une installation INF au lieu de Update.exe. Par conséquent, vous ne pouvez pas utiliser cette procédure pour installer plusieurs mises à jour de Microsoft Internet Explorer avec un seul redémarrage sous Windows NT 4.0, Windows 2000 ou Windows XP. Comme les mises à jour d’Internet Explorer pour Windows Server 2003 utilisent Update.exe comme programme d’installation, vous pouvez utiliser cette procédure pour les installer.
Pour plus d’informations sur ces sujets, reportez-vous aux sites Web de Microsoft aux adresses suivantes :
Windows 2000
Guide d’installation et de déploiement du correctif logiciel Microsoft Windows 2000
http://technet.microsoft.com/en-us/library/cc750542.aspx Windows XP
Guide d’installation et de déploiement des mises à jour pour Microsoft Windows XP Service Pack 2
http://technet.microsoft.com/en-us/library/bb457071.aspx Windows Server 2003 et Windows XP Édition Professionnel x64
Guide d’installation et de déploiement des mises à jour pour Microsoft Windows Server 2003 et Windows XP Édition 64 bits version 2003
http://technet.microsoft.com/en-us/library/cc700814.aspx Windows Server 2003 Service Pack 1
Microsoft Windows Server 2003 Service Pack 1 Installation et déploiement de Mises à jour
http://technet2.microsoft.com/windowsserver/en/library/0e02a953-aca7-4dad-b3e2-c94ea72bbc3d1033.mspx
Informations supplémentaires
Une mise à jour de produit Windows (par exemple, une mise à jour critique, un correctif de sécurité ou un correctif) est un fichier exécutable (.exe) qui contient un ou plusieurs fichiers système que vous pouvez appliquer à Windows pour corriger un problème spécifique. Les Services de Support Produit Microsoft distribuent des correctifs logiciels aux clients gravement touchés par un problème spécifique. Les mises à jour critiques et les correctifs de sécurité sont des mises à jour que Microsoft recommande à tous les clients. Vous pouvez obtenir les mises à jour critiques et les correctifs de sécurité sur le site web de Windows Update, le site web de Microsoft Update, le centre de téléchargement Microsoft ou d’autres sites web de Microsoft.
Mises à jour de Windows XP Édition x64 et mises à jour Windows Server 2003 ou mises à jour Windows XP et Windows 2000 créées après décembre 2002
Remarque Pour déterminer quand une mise à jour a été créée, consultez la date de modification sur le Update.exe ou Hotfix.exe programme d’installation dans le package de mise à jour.
Pour installer une mise à jour de produit Windows sur un seul ordinateur, exécutez le programme de mise à jour de produit sur l’ordinateur que vous souhaitez mettre à jour. Pour installer plusieurs mises à jour de produit sans redémarrer l’ordinateur entre chaque installation, utilisez le commutateur /z.
Options de ligne de commande pour le programme Update.exe
Le tableau suivant identifie les options de ligne de commande (ou commutateurs) que le programme Update.exe prend en charge :Switch Description
/f Force la fermeture des autres programmes lors de l’arrêt. /n Ne sauvegarde pas les fichiers pour la suppression des correctifs. /z Ne redémarre pas l’ordinateur après l’installation
terminé. /q Utilise le mode silencieux ; Aucune interaction de l’utilisateur n’est requise. /m Utilise le mode d’installation sans assistance (Windows 2000). /u Utilise le mode d’installation sans assistance (Windows XP). /l Répertorie les correctifs logiciels installés. L’exemple de code suivant est un fichier de commandes qui installe plusieurs mises à jour de produit et vérifie que les fichiers corrects sont remplacés après le redémarrage de l’ordinateur.
@echo off
setlocal
set PATHTOFIXES=E:\hotfix
%PATHTOFIXES%\Q123456_w2k_sp4_x86.exe /Z /M
%PATHTOFIXES%\Q123321_w2k_sp4_x86.exe /Z /M
%PATHTOFIXES%\Q123789_w2k_sp4_x86.exe /Z /M
Remarque QChain.exe fonctionnalité est incluse dans toutes les éditions x64 de Windows XP, Windows Server 2003, Windows XP et les mises à jour de produits Windows 2000 qui utilisent Update.exe et qui sont publiées depuis le 18 mai 2001. Toutefois, il existe un problème dans les mises à jour de produit publiées avant décembre 2002 qui peuvent appliquer le fichier binaire incorrect sur votre ordinateur dans certaines circonstances. En mars 2003, Microsoft a publié une version mise à jour de QChain.exe pour résoudre ce problème.
Pour plus d’informations sur ce problème ou pour obtenir l’outil Qchain.exe mis à jour, cliquez sur le numéro ci-dessous pour afficher l’article correspondant dans la Base de connaissances Microsoft :
815062 Le fichier correct n’est pas installé lorsque vous chaînez plusieurs correctifs logiciels
Toutes les mises à jour Windows NT 4.0 ou Windows XP et Windows 2000 créées avant décembre 2002
Remarque Pour déterminer quand une mise à jour de produit a été créée, case activée la date de modification sur le Update.exe ou Hotfix.exe programme d’installation dans le package de mise à jour.
Microsoft a publié un outil en ligne de commande nommé QChain.exe. Avec QChain.exe, les administrateurs système peuvent enchaîner les mises à jour. Lorsque vous enchaînez des mises à jour, vous installez plusieurs mises à jour sans redémarrer l’ordinateur entre chaque installation. Sans cet outil, la seule méthode prise en charge consiste à redémarrer l’ordinateur après chaque installation de mise à jour. L’outil QChain.exe présente les avantages suivants :
- Cela augmente le temps de fonctionnement des serveurs, car les ordinateurs ne sont pas redémarrés entre chaque installation de mise à jour.
- Il permet d’installer plus rapidement plusieurs mises à jour sur un seul ordinateur.
- Il fonctionne aussi bien sous Windows 2000 que sous Windows NT 4.0.
Notez QChain.exe fonctionnalité est incluse dans toutes les mises à jour Windows XP et Windows 2000 publiées depuis le 18 mai 2001, mais il existe un problème dans les mises à jour publiées avant décembre 2002 qui peut entraîner l’affichage d’un binaire incorrect sur votre ordinateur dans certains cas. En mars 2003, Microsoft a publié une version mise à jour de QChain.exe pour résoudre ce problème.
Pour plus d’informations sur ce problème ou pour obtenir l’outil Qchain.exe mis à jour, cliquez sur le numéro ci-dessous pour afficher l’article correspondant dans la Base de connaissances Microsoft :
815062 Le fichier correct n’est pas installé lorsque vous chaînez plusieurs correctifs logiciels
Le chaînage des installations de mise à jour sans QChain.exe n’est pas sûr
Lorsque vous installez des mises à jour, si un fichier est verrouillé ou en cours d’utilisation, il ne peut pas être remplacé. Par conséquent, le fichier est placé dans la file d’attente de renommage de fichier en attente et est remplacé après le redémarrage de l’ordinateur. Le problème se produit dans le scénario suivant :
- Vous installez les mises à jour A et B sans redémarrer l’ordinateur entre les installations.
- Les deux packages contiennent le fichier X. Le fichier X du package A est la version 3 ; Le fichier X du package B est la version 2. La version du fichier X sur l’ordinateur est la version 1.
- Lorsque le package A est installé, il place sa version du fichier X dans la file d’attente de renommage de fichier en attente.
- Lorsque le package B est installé, il place sa version du fichier X dans la file d’attente de renommage de fichier en attente.
- Lorsque l’ordinateur est redémarré, étant donné que le package B a été installé en dernier, sa version du fichier X est installée (dans la file d’attente de renommage de fichier en attente, le dernier fichier est celui qui est utilisé). Par conséquent, la version 2 est installée au lieu de la version 3 comme prévu.
Si des mises à jour précédemment chaînées sont installées sans redémarrage
Bien que ce scénario soit rare, il est recommandé de vérifier que tous les correctifs installés sont installés sur votre ordinateur. Pour le vérifier, utilisez l’outil Qfecheck.exe.
Pour plus d’informations sur Qfecheck.exe, cliquez sur le numéro ci-dessous pour afficher l’article correspondant dans la Base de connaissances Microsoft.
282784 Qfecheck.exe vérifie l’installation des correctifs Windows 2000 et Windows XP
QChain.exe nettoie la clé Opérations de renommage de fichier en attente dans le Registre pour s’assurer que seule la dernière version d’un fichier est installée après le redémarrage de l’ordinateur.
Pour installer plusieurs mises à jour en un seul redémarrage
Exécutez le programme d’installation de mise à jour avec le commutateur -z pour indiquer au programme d’installation de ne pas redémarrer après l’installation. Ajoutez le commutateur -m (pour le mode silencieux) si vous ne souhaitez pas que les invites ou les messages s’affichent pendant l’installation.
Le programme d’installation de la mise à jour est l’un des programmes suivants :
- Fichier du programme du package à extraction automatique (par exemple, Qnnnnnn_w2k_spx_x86_en.exe).
- Hotfix.exe (si vous avez extrait tous les fichiers du package).
Après avoir installé tous les correctifs, exécutez QChain.exe.
Redémarrez l’ordinateur.
Vous pouvez également créer un fichier de commandes pour ce faire. L’exemple de fichier de commandes suivant illustre cette méthode :
@echo off
setlocal
set PATHTOFIXES=some path%PATHTOFIXES%\Q123456_w2k_sp2_x86.exe -z -m
%PATHTOFIXES%\Q123321_w2k_sp2_x86.exe -z -m
%PATHTOFIXES%\Q123789_w2k_sp2_x86.exe -z -m
%PATHTOFIXES%\qchain.exe
Comment obtenir QChain.exe
QChain.exe fonctionnalité est incluse dans toutes les mises à jour Windows XP et Windows 2000 publiées depuis le 18 mai 2001, mais il existe un problème dans les mises à jour publiées avant décembre 2002 qui peut entraîner l’insertion d’un binaire incorrect sur votre ordinateur dans certains cas. En mars 2003, Microsoft a publié une version mise à jour de QChain.exe pour résoudre ce problème.
Pour plus d’informations sur ce problème ou pour obtenir l’outil Qchain.exe mis à jour, cliquez sur le numéro ci-dessous pour afficher l’article correspondant dans la Base de connaissances Microsoft :
815062 Le fichier correct n’est pas installé lorsque vous chaînez plusieurs correctifs logiciels
Syntaxe de commande QChain.exe
qchain [logfilename]
Le paramètre optionnel [logfilename] crée un fichier avec un instantané avant et après de la clé Opérations de renommage de fichier en attente.
Exemple de sortie QChain.exe
---- les anciennes informations contenues dans le registre ------
Source : C :\WINNT\inf\acpi.inf
Version : 5.0.2183.1
Destination :d :\ntsust\testregchech\1394.inf
Version : 5.0.2183.1
Source :C :\WINNT\inf\adm_mult.inf
Version : 5.0.2184.1
Destination :d :\ntsust\testregchech\1394.inf
Version : 5.0.2183.1
Source :C :\WINNT\inf\banshee.inf
Version : 5.0.2080.1
Destination :d :\ntsust\testregchech\1394.inf
Version : 5.0.2183.1
---- de nouvelles informations dans l'------ du registre
Source :C :\WINNT\inf\adm_mult.inf
Version : 5.0.2184.1
Destination :d :\ntsust\testregchech\1394.inf
Version : 5.0.2183.1
Limites de QChain.exe
Bien que QChain fonctionne avec la plupart des mises à jour Windows NT 4.0 et Windows 2000, QChain.exe peut ne pas fonctionner avec les mises à jour qui contiennent des fichiers binaires répertoriés dans la clé de registre suivante :
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\KnownDLLs Les fichiers binaires listés dans cette clé de Registre sont chargés en mémoire au démarrage. Lorsque le programme d’installation de mise à jour appelle la fonction GetFileVersionInfo sur un fichier binaire de cette liste, le programme d’installation de mise à jour fait référence au binaire déjà chargé au lieu du binaire actuellement présent à l’emplacement cible.
Étant donné que les fichiers binaires répertoriés dans la clé de Registre KnownDLLs se chargent en mémoire au démarrage, le programme d’installation de la mise à jour doit remplacer le binaire cible par le binaire fixe avant que l’ordinateur redémarre. Par conséquent, le programme d’installation de la mise à jour ne crée pas d’opération de renommage de fichier en attente pour remplacer le fichier binaire au redémarrage. Au lieu de cela, la mise à jour déplace le binaire actuel vers un emplacement temporaire, place le binaire fixe à l’emplacement où se trouvait le binaire actuel, puis crée une opération de renommage de fichier en attente pour supprimer le binaire actuel lorsque l’ordinateur redémarre.
QChain affecte uniquement les opérations de renommage de fichier en attente qui effectuent des opérations de remplacement binaire. Il ne fait rien avec les opérations de renommage de fichier en attente qui effectuent des opérations de suppression.
Toutes les mises à jour Windows NT 4.0 et Windows 2000 antérieures au SP2 utilisent GetFileVersionInfo pour identifier la version d’un fichier. Si vous installez au moins deux mises à jour Windows NT 4.0 ou Windows 2000 antérieures à SP2 et que les mises à jour contiennent des DLL connues qui se chevauchent, l’utilisation de QChain pour chaîner l’installation de ces mises à jour ne garantit pas l’installation du correctif de la dernière version.
Le scénario suivant montre pourquoi QChain peut ne pas placer le bon binaire sur le système :
Vous installez les packages de mise à jour A et B et vous ne redémarrez pas entre les installations.
Les deux packages contiennent Kernel32.dll, un fichier qui se trouve dans la liste KnownDLLs. Le package A inclut Kernel32.dll version 3, le package B inclut Kernel32.dll version 2 et la version Kernel32.dll 1 de l’ordinateur est installée.
Lorsque le package A est installé, GetFileVersionInfo signale que l’ordinateur a Kernel32.dll version 1. Comme le package A inclut la version 3, le programme d’installation de la mise à jour identifie la nécessité de remplacer le fichier.
- Le programme d’installation de la mise à jour déplace la version 1 de Kernel32.dll sur l’ordinateur vers un emplacement temporaire et crée une opération de renommage de fichier en attente pour supprimer le fichier Kernel32.dll de l’emplacement temporaire au prochain redémarrage de l’ordinateur.
- La version 3 du Kernel32.dll du package A est copiée sur l’ordinateur.
Lors de l’installation du package B, GetFileVersionInfo signale toujours que Kernel32.dll version 1 est installée sur l’ordinateur, car GetFileVersionInfo lit les informations de version du Kernel32.dll chargé en mémoire. Le package B a la version 2 et le correctif logiciel identifie donc la nécessité de remplacer un fichier.
Le programme d’installation de la mise à jour déplace le Kernel32.dll qui se trouve maintenant sur l’ordinateur (le package A Kernel32.dll la version 3) vers un emplacement temporaire et crée une opération de renommage de fichier en attente pour supprimer le Kernel32.dll (version 3) de l’emplacement temporaire au prochain redémarrage de l’ordinateur.
La version 2 du Kernel32.dll du package B est copiée sur l’ordinateur.
QChain s’exécute, mais il n’y a pas d’opérations de renommage de fichier en attente pour le remplacement des fichiers et QChain ne fait donc rien.
Étant donné que le package B a été installé récemment, le package B Kernel32.dll version 2 se trouve à l’emplacement correct sur l’ordinateur. Par conséquent, il se charge en mémoire lorsque l’ordinateur redémarre. Les opérations de renommage de fichier en attente suppriment à la fois le Kernel32.dll d’origine version 1 et le package A Kernel32.dll la version 3. Par conséquent, l’ordinateur dispose désormais de Kernel32.dll version 2 au lieu de la version 3.
Il existe un correctif Windows 2000 post-SP2 dans lequel GetFileVersionInfo n’est plus utilisé sur les DLL connues qui sont chargées en mémoire. Au lieu de cela, le programme d’installation de la mise à jour mappe le fichier qui est réellement présent à l’emplacement cible, puis appelle GetFileVersionInfo sur le fichier mappé. Par conséquent, vous pouvez utiliser QChain.exe pour enchaîner les mises à jour Windows 2000 postérieures à SP2. Dans ce cas, la dernière version d’un fichier est installée, quel que soit l’ordre d’installation des mises à jour.
Si vous rejouez le scénario précédent et utilisez des mises à jour Windows 2000 postérieures à SP2, le correctif logiciel du package B mappe les Kernel32.dll du package A et reconnaît la version 3. La version 3 est postérieure à la Kernel32.dll à la version 2 du package B. Par conséquent, le package B ne remplace pas le Kernel32.dll qui se trouve sur le système et la version 3 de la Kernel32.dll du package A est la version que l’ordinateur utilise correctement après le redémarrage de l’ordinateur.