Il est possible de déterminer ainsi si une machine est en attente de
reboot suite à l'installation des maj par l'agent Windows Update, et
ceci à distance :
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Gilles LAURENT [MVP]
"Philemil" wrote:
Bonjour à tous
Bonjour,
Il est possible de déterminer ainsi si une machine est en attente de reboot suite à l'installation des maj par l'agent Windows Update, et ceci à distance :
Est-il possible d'avoir la même info pour savoir si la machine est:
- en attente de download des maj - en attente d'installation des maj
Je ne pense pas qu'il soit possible de différencier ces deux états. Il est toutefois possible de déterminer si le poste à encore besoin de télécharger et/ou d'installer des correctifs :
--- Couper ici : CodeSnippet.vbs --- Set oSysInfo=CreateObject("Microsoft.Update.SystemInfo") Set oSearcher=CreateObject("Microsoft.Update.Searcher") Set oRes=oSearcher.Search("Type='Software' and IsInstalled=0") WScript.Echo "Updates needed : " & oRes.updates.Count WScript.Echo "Reboot required : " & oSysInfo.RebootRequired --- Couper ici : CodeSnippet.vbs ---
Note: Si les correctifs sont installés et qu'un redémarrage de la machine est nécessaire pour finaliser l'installation alors "Updates needed=0" et "Reboot required=True"
Il est possible de déterminer ainsi si une machine est en attente de
reboot suite à l'installation des maj par l'agent Windows Update, et
ceci à distance :
Est-il possible d'avoir la même info pour savoir si la machine est:
- en attente de download des maj
- en attente d'installation des maj
Je ne pense pas qu'il soit possible de différencier ces deux états. Il est
toutefois possible de déterminer si le poste à encore besoin de télécharger
et/ou d'installer des correctifs :
--- Couper ici : CodeSnippet.vbs ---
Set oSysInfo=CreateObject("Microsoft.Update.SystemInfo")
Set oSearcher=CreateObject("Microsoft.Update.Searcher")
Set oRes=oSearcher.Search("Type='Software' and IsInstalled=0")
WScript.Echo "Updates needed : " & oRes.updates.Count
WScript.Echo "Reboot required : " & oSysInfo.RebootRequired
--- Couper ici : CodeSnippet.vbs ---
Note: Si les correctifs sont installés et qu'un redémarrage de la machine
est nécessaire pour finaliser l'installation alors "Updates needed=0" et
"Reboot required=True"
--
Gilles LAURENT
MVP Windows Server - Admin Frameworks
http://glsft.free.fr
Il est possible de déterminer ainsi si une machine est en attente de reboot suite à l'installation des maj par l'agent Windows Update, et ceci à distance :
Est-il possible d'avoir la même info pour savoir si la machine est:
- en attente de download des maj - en attente d'installation des maj
Je ne pense pas qu'il soit possible de différencier ces deux états. Il est toutefois possible de déterminer si le poste à encore besoin de télécharger et/ou d'installer des correctifs :
--- Couper ici : CodeSnippet.vbs --- Set oSysInfo=CreateObject("Microsoft.Update.SystemInfo") Set oSearcher=CreateObject("Microsoft.Update.Searcher") Set oRes=oSearcher.Search("Type='Software' and IsInstalled=0") WScript.Echo "Updates needed : " & oRes.updates.Count WScript.Echo "Reboot required : " & oSysInfo.RebootRequired --- Couper ici : CodeSnippet.vbs ---
Note: Si les correctifs sont installés et qu'un redémarrage de la machine est nécessaire pour finaliser l'installation alors "Updates needed=0" et "Reboot required=True"
En fait, l'interface IUpdate expose les propriétés IsDownloaded et IsInstalled. Le script ci-dessous permet de déterminer si des correctifs sont nécessaires pour la machine locale et dans l'affirmative de déterminer si les correctifs sont téléchargés ou non :
--- CodeSnippet.vbs --- Set oSysInfo=CreateObject("Microsoft.Update.SystemInfo") Set oSearcher=CreateObject("Microsoft.Update.Searcher") Set oRes=oSearcher.Search("Type='Software' and IsInstalled=0") WScript.Echo "Updates needed : " & oRes.Updates.Count WScript.Echo "Reboot required : " & oSysInfo.RebootRequired
For nIndex=0 To oRes.Updates.Count-1 Set oUpdate=oRes.Updates.Item(nIndex) WScript.Echo " Title : " & oUpdate.Title WScript.Echo " Downloaded : " & oUpdate.IsDownloaded WScript.Echo Next --- CodeSnippet.vbs ---
Note: Ici, la propriété IsInstalled de la classe IUpdate sera toujours False car la clause WHERE stipule de rechercher uniquement les correctifs non installés.
En fait, l'interface IUpdate expose les propriétés IsDownloaded et
IsInstalled. Le script ci-dessous permet de déterminer si des correctifs sont
nécessaires pour la machine locale et dans l'affirmative de déterminer si les
correctifs sont téléchargés ou non :
--- CodeSnippet.vbs ---
Set oSysInfo=CreateObject("Microsoft.Update.SystemInfo")
Set oSearcher=CreateObject("Microsoft.Update.Searcher")
Set oRes=oSearcher.Search("Type='Software' and IsInstalled=0")
WScript.Echo "Updates needed : " & oRes.Updates.Count
WScript.Echo "Reboot required : " & oSysInfo.RebootRequired
For nIndex=0 To oRes.Updates.Count-1
Set oUpdate=oRes.Updates.Item(nIndex)
WScript.Echo " Title : " & oUpdate.Title
WScript.Echo " Downloaded : " & oUpdate.IsDownloaded
WScript.Echo
Next
--- CodeSnippet.vbs ---
Note: Ici, la propriété IsInstalled de la classe IUpdate sera toujours False
car la clause WHERE stipule de rechercher uniquement les correctifs non
installés.
En fait, l'interface IUpdate expose les propriétés IsDownloaded et IsInstalled. Le script ci-dessous permet de déterminer si des correctifs sont nécessaires pour la machine locale et dans l'affirmative de déterminer si les correctifs sont téléchargés ou non :
--- CodeSnippet.vbs --- Set oSysInfo=CreateObject("Microsoft.Update.SystemInfo") Set oSearcher=CreateObject("Microsoft.Update.Searcher") Set oRes=oSearcher.Search("Type='Software' and IsInstalled=0") WScript.Echo "Updates needed : " & oRes.Updates.Count WScript.Echo "Reboot required : " & oSysInfo.RebootRequired
For nIndex=0 To oRes.Updates.Count-1 Set oUpdate=oRes.Updates.Item(nIndex) WScript.Echo " Title : " & oUpdate.Title WScript.Echo " Downloaded : " & oUpdate.IsDownloaded WScript.Echo Next --- CodeSnippet.vbs ---
Note: Ici, la propriété IsInstalled de la classe IUpdate sera toujours False car la clause WHERE stipule de rechercher uniquement les correctifs non installés.
En fait, l'interface IUpdate expose les propriétés IsDownloaded et IsInstalled. Le script ci-dessous permet de déterminer si des correctifs sont nécessaires pour la machine locale et dans l'affirmative de déterminer si les correctifs sont téléchargés ou non :
--- CodeSnippet.vbs --- Set oSysInfo=CreateObject("Microsoft.Update.SystemInfo") Set oSearcher=CreateObject("Microsoft.Update.Searcher") Set oRes=oSearcher.Search("Type='Software' and IsInstalled=0") WScript.Echo "Updates needed : " & oRes.Updates.Count WScript.Echo "Reboot required : " & oSysInfo.RebootRequired
For nIndex=0 To oRes.Updates.Count-1 Set oUpdate=oRes.Updates.Item(nIndex) WScript.Echo " Title : " & oUpdate.Title WScript.Echo " Downloaded : " & oUpdate.IsDownloaded WScript.Echo Next --- CodeSnippet.vbs ---
Note: Ici, la propriété IsInstalled de la classe IUpdate sera toujours False car la clause WHERE stipule de rechercher uniquement les correctifs non installés.
OK, je vais essayer de me débrouiller ainsi, mais il est dommage que l'interface ISystemInformation n'apporte que la propriété RebootRequired,alors que suivant les paramètres du client WUA, la machine peut être en attente de download, ou en attente d'installation
J'ai par ailleurs trouvé le fichier log : %SystemRoot%SoftwareDistributionReportingEvents.log
qui donne l'état de WUA , en analysant la dernière ligne, ce devrait être pas mal.
En fait, l'interface IUpdate expose les propriétés IsDownloaded et
IsInstalled. Le script ci-dessous permet de déterminer si des correctifs sont
nécessaires pour la machine locale et dans l'affirmative de déterminer si les
correctifs sont téléchargés ou non :
--- CodeSnippet.vbs ---
Set oSysInfo=CreateObject("Microsoft.Update.SystemInfo")
Set oSearcher=CreateObject("Microsoft.Update.Searcher")
Set oRes=oSearcher.Search("Type='Software' and IsInstalled=0")
WScript.Echo "Updates needed : " & oRes.Updates.Count
WScript.Echo "Reboot required : " & oSysInfo.RebootRequired
For nIndex=0 To oRes.Updates.Count-1
Set oUpdate=oRes.Updates.Item(nIndex)
WScript.Echo " Title : " & oUpdate.Title
WScript.Echo " Downloaded : " & oUpdate.IsDownloaded
WScript.Echo
Next
--- CodeSnippet.vbs ---
Note: Ici, la propriété IsInstalled de la classe IUpdate sera toujours False
car la clause WHERE stipule de rechercher uniquement les correctifs non
installés.
OK, je vais essayer de me débrouiller ainsi, mais il est dommage que
l'interface ISystemInformation n'apporte que la propriété
RebootRequired,alors que suivant les paramètres du client WUA, la
machine peut être en attente de download, ou en attente d'installation
J'ai par ailleurs trouvé le fichier log :
%SystemRoot%SoftwareDistributionReportingEvents.log
qui donne l'état de WUA , en analysant la dernière ligne, ce devrait
être pas mal.
En fait, l'interface IUpdate expose les propriétés IsDownloaded et IsInstalled. Le script ci-dessous permet de déterminer si des correctifs sont nécessaires pour la machine locale et dans l'affirmative de déterminer si les correctifs sont téléchargés ou non :
--- CodeSnippet.vbs --- Set oSysInfo=CreateObject("Microsoft.Update.SystemInfo") Set oSearcher=CreateObject("Microsoft.Update.Searcher") Set oRes=oSearcher.Search("Type='Software' and IsInstalled=0") WScript.Echo "Updates needed : " & oRes.Updates.Count WScript.Echo "Reboot required : " & oSysInfo.RebootRequired
For nIndex=0 To oRes.Updates.Count-1 Set oUpdate=oRes.Updates.Item(nIndex) WScript.Echo " Title : " & oUpdate.Title WScript.Echo " Downloaded : " & oUpdate.IsDownloaded WScript.Echo Next --- CodeSnippet.vbs ---
Note: Ici, la propriété IsInstalled de la classe IUpdate sera toujours False car la clause WHERE stipule de rechercher uniquement les correctifs non installés.
OK, je vais essayer de me débrouiller ainsi, mais il est dommage que l'interface ISystemInformation n'apporte que la propriété RebootRequired,alors que suivant les paramètres du client WUA, la machine peut être en attente de download, ou en attente d'installation
J'ai par ailleurs trouvé le fichier log : %SystemRoot%SoftwareDistributionReportingEvents.log
qui donne l'état de WUA , en analysant la dernière ligne, ce devrait être pas mal.