Comment faire taire Windows à propos de Silverlight ?

Le problème est bien décrit ici, donc je ne le répéterai pas ; mais en gros, masquer la mise à jour de Silverlight de manière naïve ne fonctionne pas.

La question est donc : comment puis-je dire à Windows de se taire à propos de Silverlight et d’arrêter de le proposer dans la liste ?


Source : Super User,)

Le problème est qu’il existe 7 versions différentes de Silverlight. Certaines sont plus anciennes, d’autres plus récentes.

Vous pouvez manuellement masquer, « Rechercher des mises à jour », Options, les masquer en boucle 7 fois ou plus. Je ne voulais pas faire cela manuellement, donc j’ai écrit un script WSH js, à enregistrer sous WUA_xSilverlight.js :

var wu_Session = WScript.CreateObject("Microsoft.Update.Session");
var wu_Searcher = wu_Session.CreateUpdateSearcher();
wu_Searcher.Online = false;

do {
  WScript.echo("Searching...");
  var silverstreak = false;
  var searchResult = wu_Searcher.Search("IsHidden=0 And IsInstalled=0");

  for(var i=0; i<searchResult.Updates.Count; i++){
    var wupdate = searchResult.Updates.Item(i);
    if ( ! wupdate.Title.indexOf("Microsoft Silverlight") ) { // if -1
    wupdate.IsHidden=1;
    WScript.echo("   Hiding update: " + wupdate.Title);
    silverstreak = true;
    }
  }
} while ( silverstreak );  // repeat search

Exécutez le fichier enregistré : cscript.exe WUA_xSilverlight.js.
J’aurais pu optimiser la recherche et donc le code, mais ça fonctionne donc tant pis.