Le dernier Patch Tuesday n’a pas été sans problème car plusieurs bugs sont apparus dans Windows 10 v1903. L’un des derniers concerne le service Windows Search.
Microsoft a récemment reconnu que l’une des dernières mises à jour cumulatives à destination de May 2019 Update peut poser problème dans certaines situations. Des soucis sont apparus avec le menu Démarrer et Windows Search. La mise à jour en question se nomme KB4515384. Elle a été publiée à l’occasion de la grande maintenance mensuelle du 10 septembre dernier. Microsoft travaille sur des correctifs. En attendant leur publication, plusieurs recommandations sont proposées si vous souhaitez réparer par vous-même ce bug du service de recherche de l’OS.
Microsoft recommande avant toute chose d’essayer l’outil de dépannage de “Recherche et indexation“. Disponible ici
Paramètres> Mise à jour et sécurité> Résolution des problèmes > Recherche et indexation
il fait partie des services de dépannage automatisés de Windows.
A l’usage ils n’arrivent pas forcement à résoudre tous les problèmes mais parfois ils peuvent traiter avec succès certains bugs mineurs. A noter que le dépanneur peut être lancé à partir d’une invite de commande.
Si la procédure est plus complexe, elle offre l’avantage de pouvoir créer des scripts. Pour ce faire, tapez “cmd” dans le champ rechercher de la barre des tâches pour exécuter une invite de commande en tant qu’administration (bouton droit de la souris).
Dans l’invite de commande vous pouvez exécuter la commande suivante
msdt.exe -ep WindowsHelp id SearchDiagnostic
Si cette solution ne fonctionne pas, Microsoft recommande de réinitialiser Windows Search. L’opération est compliquée au point que le géant propose un script PowerShell dédié.
# Copyright © 2019, Microsoft Corporation. All rights reserved.
function T-R
{
[CmdletBinding()]
Param(
[String] $n
)
$o = Get-Item -LiteralPath $n -ErrorAction SilentlyContinue
return ($o -ne $null)
}
function R-R
{
[CmdletBinding()]
Param(
[String] $l
)
$m = T-R $l
if ($m) {
Remove-Item -Path $l -Recurse -ErrorAction SilentlyContinue
}
}
function S-D {
R-R “HKLM:\SOFTWARE\Microsoft\Cortana\Testability”
}
function K-P {
[CmdletBinding()]
Param(
[String] $g
)
$h = Get-Process $g -ErrorAction SilentlyContinue
$i = $(get-date).AddSeconds(2)
$k = $(get-date)
# While the timeout hasn’t been hit
while ((($i – $k) -gt 0) -and $h) {
$k = $(get-date)
$h = Get-Process $g -ErrorAction SilentlyContinue
if ($h) {
$h.CloseMainWindow() | Out-Null
Stop-Process -Id $h.Id -Force
}
$h = Get-Process $g -ErrorAction SilentlyContinue
}
}
function D-FF {
[CmdletBinding()]
Param(
[string[]] $e
)
foreach ($f in $e) {
if (Test-Path -Path $f) {
Remove-Item -Recurse -Force $f -ErrorAction SilentlyContinue
}
}
}
function D-W {
$d = @(“$Env:localappdata\Packages\Microsoft.Cortana_8wekyb3d8bbwe\AC\AppCache”,
“$Env:localappdata\Packages\Microsoft.Cortana_8wekyb3d8bbwe\AC\INetCache”,
“$Env:localappdata\Packages\Microsoft.Cortana_8wekyb3d8bbwe\AC\INetCookies”,
“$Env:localappdata\Packages\Microsoft.Cortana_8wekyb3d8bbwe\AC\INetHistory”,
“$Env:localappdata\Packages\Microsoft.Windows.Cortana_cw5n1h2txyewy\AC\AppCache”,
“$Env:localappdata\Packages\Microsoft.Windows.Cortana_cw5n1h2txyewy\AC\INetCache”,
“$Env:localappdata\Packages\Microsoft.Windows.Cortana_cw5n1h2txyewy\AC\INetCookies”,
“$Env:localappdata\Packages\Microsoft.Windows.Cortana_cw5n1h2txyewy\AC\INetHistory”)
D-FF $d
}
function R-L {
[CmdletBinding()]
Param(
[String] $c
)
K-P $c 2>&1 | out-null
D-W # 2>&1 | out-null
K-P $c 2>&1 | out-null
Start-Sleep -s 5
}
Write-Output “Verifying that the script is running elevated”
if (-Not ([Security.Principal.WindowsPrincipal] [Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole] ‘Administrator’)) {
if ([int](Get-CimInstance -Class Win32_OperatingSystem | Select-Object -ExpandProperty BuildNumber) -ge 6000) {
$Cx = “-File `”” + $MyInvocation.MyCommand.Path + “`” ” + $MyInvocation.UnboundArguments
Start-Process -FilePath PowerShell.exe -Verb Runas -ArgumentList $Cx
Exit
}
}
$a = “searchui”
Write-Output “Resetting Windows Search Box”
S-D 2>&1 | out-null
R-L $a
Write-Output “Done…”
Pour l’exploiter vous devez le recopier dans un fichier texte à enregistrer sur le bureau par exemple. Une fois l’opération terminée il est nécessaire de changer l’extension . txt par .ps1.
Dans notre cas il s’agit du fichier
Reinitialisation_Windows_Search.ps1
Ensuite un clic droit de la souris permet de l’exécuter avec PowerShell. Lorsque vous êtes invité à modifier votre périphérique, cliquez sur Oui. Un redémarrage n’est pas obligatoire mais recommandé. Si de retour sur le bureau, Windows Search ne fonctionne toujours pas, la suppression de la mise à jour cumulative KB4515384 est la dernière option possible en attendant la publication d’un correctif.
Maxsun tente de surprendre dans le petit monde des cartes graphiques. L'iCraft Arc B580 est… Lire d'avantage
Le site officiel de Zotac a confirmé l’existence des GeForce RTX 50 series et leur… Lire d'avantage
La prochaine Radeon RX 8800 XT pourrait bien d’appeler la Radeon RX 9070 XT. C’est… Lire d'avantage
G.Skill tente de se distinguer sur le marché des périphériques en lançant le WigiDash, un… Lire d'avantage
G.Skill a étoffé son catalogue produits avec l’annonce du WigiDash. Il s’agit d’un périphérique USB… Lire d'avantage
Lian Li dévoile sa gamme de ventilateurs UNI FAN TL Wireless. La technologie 2,4 GHz… Lire d'avantage
Voir commentaires
Il y a un petit logiciel gratuit qui s'appelle Everything et qui fait très bien le travail sans prendre de ressource ni de place. Au moins un truc que Microsoft ne pourra pas espionner, le recherche.