Come nascondere gli aggiornamenti in Aggiornamenti di Windows senza GUI


3

Quando non desideri aggiornare un particolare aggiornamento di Windows, puoi farlo seguendo i seguenti passaggi su Windows 7:

  1. Apri gli aggiornamenti di Windows
  2. Fai clic su Visualizza aggiornamenti
  3. Fare clic con il tasto destro sull'elemento che si desidera nascondere
  4. Clicca su Nascondi

Ma voglio sapere come farlo senza usare la GUI. Quindi posso fare domanda per più PC. In che modo Windows 7 salva le informazioni dell'aggiornamento nascosto? è dal registro? Possiamo effettivamente sostituire quei 4 passaggi con un semplice file di registro? O qualche sorta di script di Windows?


perché hai accettato la risposta?
magicandre1981,

Non è la mia intenzione. L'ho rimesso. Questa è la risposta di cui ho bisogno.
Jason Chiang,

Risposte:


7

Un utente ha pubblicato un VBscript (HideKBs_BingDesktop.vbs) su msfn.org che nasconde gli aggiornamenti .

' Maxpsoft May 30, 2013, 9:34:15 PM
' 06/18/2013 Add extra for Bing Desktop v1.3
' 06/28/2013 Updated to continue searching as long as it is finding something otherwise Quit
'
' Original Mike.Moore Dec 17, 2012 on answers.microsoft but when ran it Hide everything so no good.
' Link to script: http://www.msfn.org/board/topic/163162-hide-bing-desktop-and-other-windows-updates/
' You may freely use this script as long as you copy it complete and it remains the same except for adjusting hideupdates.
' If I need to change something then let me know so all may benefit.

Dim WSHShell, StartTime, ElapsedTime, strUpdateName, strAllHidden
Dim Checkagain 'Find more keep going otherwise Quit

Dim hideupdates(3) 'TO ADD 1 EDIT THE (3) AND ADD another hideupdates(#)

hideupdates(0) = "KB2592687" 'Remote Desktop Protocol 8.0
hideupdates(1) = "KB2709981" 'Windows Media Player 12
hideupdates(2) = "Bing Desktop" 'With this we get all versions
hideupdates(3) = "Silverlight"

Set WSHShell = CreateObject("WScript.Shell")

StartTime = Timer 'Start the Timer

Set updateSession = CreateObject("Microsoft.Update.Session")
updateSession.ClientApplicationID = "MSDN Sample Script"
Set updateSearcher = updateSession.CreateUpdateSearcher()
Set searchResult = updateSearcher.Search("IsInstalled=0 and Type='Software' and IsHidden=0")

Checkagain = "True"

For K = 0 To 10 'Bing Desktop has 4, Silverlight has 5
If Checkagain = "True" Then
Checkagain = "False"
CheckUpdates
ParseUpdates
End if
Next

ElapsedTime = Timer - StartTime
strTitle = "Bing Desktop and Windows Updates Hidden."
strText = strAllHidden
strText = strText & vbCrLf & ""
strText = strText & vbCrLf & "Total Time " & ElapsedTime
intType = vbOkOnly

'Silent just comment these 2 lines with a ' and it will run and quit
Set objWshShell = WScript.CreateObject("WScript.Shell")
intResult = objWshShell.Popup(strText, ,strTitle, intType)

'Open Windows Update after remove the comment '
'WshShell.Run "%windir%\system32\control.exe /name Microsoft.WindowsUpdate"

Set objWshShell = nothing
Set WSHShell = Nothing
WScript.Quit


Function ParseUpdates 'cycle through updates
For I = 0 To searchResult.Updates.Count-1
Set update = searchResult.Updates.Item(I)
strUpdateName = update.Title
'WScript.Echo I + 1 & "> " & update.Title
For j = 0 To UBound(hideupdates)
if instr(1, strUpdateName, hideupdates(j), vbTextCompare) = 0 then
Else
strAllHidden = strAllHidden _
& vbcrlf & update.Title
update.IsHidden = True'
Checkagain = "True"
end if
Next
Next
End Function

Function CheckUpdates 'check for new updates cause Bing Desktop has 3
Set updateSession = CreateObject("Microsoft.Update.Session")
updateSession.ClientApplicationID = "MSDN Sample Script"
Set updateSearcher = updateSession.CreateUpdateSearcher()
Set searchResult = _
updateSearcher.Search("IsInstalled=0 and Type='Software' and IsHidden=0")
End Function

Modifica l'array hideupdates come scritto nello script e aggiungi il numero KB che desideri nascondere.


Anche se non ho idea del perché 'Set objWshShell = nothing' & 'Set WSHShell = Nothing' causino errori sul mio sistema x64 di Windows 7 ma dopo aver commentato quelle due righe, ha funzionato come un fascino. Grazie per questa brillante risposta !!
Jason Chiang

ciao @ magicandre1981 Non so come "accettare" la risposta fino ad ora. grazie comunque.
Jason Chiang
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.