Déterminer si le correctif Windows a été appliqué

12

J'ai récemment corrigé un défaut dans notre produit en appliquant le correctif Microsoft. Certains de nos clients signalent toujours que le problème persiste avec le correctif appliqué. Ils utilisent des ordinateurs portables assez étroitement contrôlés et ne peuvent pas simplement appliquer le correctif eux-mêmes. Je veux savoir s'il existe un moyen de vérifier si un correctif a été appliqué.

Cet article et ce fil suggèrent qu'un correctif appliqué avec le programme hfx.exe apparaîtra dans le Registre sous:

  • HKEY_LOCAL_MACHINE \ Software \ Microsoft \ Windows NT \ CurrentVersion \ Hotfix \ KB nnnn .

Cependant, je ne vois aucune clé "Hotfix" sous CurrentVersion (aussi, je n'ai pas appliqué le correctif avec hfx.exe, je viens d'exécuter le fichier que j'ai téléchargé de Microsoft et il a fait l'affaire). Existe-t-il une autre façon de déterminer si elle a été appliquée?

Devin
la source
Quelle version de Windows exécute l'ordinateur portable?
David
Windows 7 Enterprise
Devin
2
Cet article suggérant de regarder dans le Registre est pour Windows NT 4.0, et c'est tout. Je suppose que vous n'exécutez pas NT 4.0. ;)
Ƭᴇcʜιᴇ007
2
Touche bon monsieur :)
Devin

Réponses:

11

Vous pouvez voir les mises à jour installées sur un ordinateur en accédant à Ajout / Suppression de programmes , puis en cliquant sur Afficher les mises à jour installées . La boîte de recherche est très pratique ici.

Mises à jour Mises à jour

David
la source
Ouais, je viens de m'en rendre compte. Je ne pensais pas que des correctifs seraient là, mais j'avais tort.
Devin
2
Bien que cela fonctionne, essayer d'identifier un correctif particulier peut être douloureux. Comme je le savais déjà, cette méthode est allée avec la solution PowerShell 2.0 de @oleschri qui a très bien fonctionné.
Lankymart
1
N'oubliez pas que vous pouvez rechercher un numéro de correctif spécifique en utilisant la barre de recherche en haut à droite.
Stevoisiak
9

Vous pouvez utiliser PowerShell 2.0 ou version ultérieure pour détecter les correctifs installés.

PS> Get-HotFix

Pour détecter si un correctif spécifique (par exemple KB2799904) est installé, écrivez:

PS> Get-HotFix -ID "KB2799904"

PS> Get-HotFix | where { $_.HotFixID -eq "KB2799904" }

Si cela renvoie au moins un objet, le correctif est installé.

Vous pouvez également spécifier un ordinateur distant avec le -ComputerNameparamètre si vous disposez des autorisations suffisantes sur cet ordinateur.

oleschri
la source
1
Mieux: Get-HotFix -ID KB2799904. Cela peut même fonctionner un peu plus rapidement s'il se traduit par un filtre WMI plutôt que par filtrage après coup.
Christian
@Christian J'ai mis à jour la réponse.
oleschri
2
Vous n'avez même pas besoin de spécifier -IDcomme paramètre, il est par défaut. Soget-hotfix kb2799904
Nacht - Reinstate Monica
3

L'article KB du correctif devrait afficher des informations sur les fichiers pour ce qu'il met à jour. Ils fournissent des numéros de version, des tailles de fichiers et des horodatages attendus. Si vos fichiers correspondent à ceux (ou sont plus récents), alors vous avez appliqué le correctif (ou un plus récent qui incorpore l'ancien).

Par exemple (à partir de KB923293 ):

entrez la description de l'image ici

Ƭᴇcʜιᴇ007
la source
2
C'est à peu près la seule façon dont je sais comment faire cela. Gardez à l'esprit que les versions et les dates des fichiers pourraient être modifiées à l'avenir, alors gardez cela à l'esprit.
Ramhound
Comment sauriez-vous quels fichiers vérifier (sinon tous)? Supposons que les mises à jour A et B mettent à jour le fichier F vers la version X. Mais seule la mise à jour B contient un correctif critique pour le fichier G (qui vous est inconnu) qui vous intéresse. Comment utiliseriez-vous cette méthode pour vous assurer que le fichier G a le correction critique sans savoir de quel fichier G il s'agit?
Florian Winter
2

Comme moyen plus générique (ou scriptable) de le faire, vous pouvez utiliser systeminfoce qui imprime une section avec une liste des correctifs installés:

C:\Users\user> systeminfo
[...]
Hotfix(s):                 88 Hotfix(s) Installed.
                           [01]: KB2032276
                           [02]: KB2296011
                           [03]: KB2305420
[...]
syneticon-dj
la source
Le problème avec cette méthode est que la liste de mise à jour est potentiellement incomplète. En effet, je l'ai rencontré moi-même dans Win7. Il semble être au maximum de 245 mises à jour. Explication possible: support.microsoft.com/en-us/help/2644427/…
Jimadine
0

Utilisez cette commande WMIC dans une invite de commandes élevée pour obtenir une liste de tous les correctifs installés. Cela n'inclura pas les mises à jour supprimées à l'aide de Nettoyage de disque> Nettoyage des fichiers système> Nettoyage de la mise à jour Windows.

wmic qfe

Moab
la source
-1

Rien de ce qui précède ne m'a donné satisfaction, j'ai donc essayé de réinstaller et il est venu avec KBxxxx "déjà installé", donc c'est une bonne méthode de preuve,

JohnP4216
la source