Lorsque j'essaie d'accéder à la fonction de recherche Windows 10 (en cliquant sur la barre dans la barre des tâches ou en commençant à taper dans le menu Démarrer), rien ne se passe; La recherche "fenêtre" ne apparaît pas.
J'ai enquêté seul et j'ai trouvé quelques points pouvant causer ce problème:
gpedit.msc
qui affectent Corttana et la recherche Windows. Après avoir réinitialisé ces stratégies à la valeur par défaut ("non configurée") et de redémarrer, aucun changement n'est perceptible.Le répertoire de Corttana en C:\Windows\SystemApps
n'existe pas. Cela signifie également qu'un fichier nommé SearchUI.exe
n'existe pas car il devrait être contenu dans ce dossier. Le gestionnaire de tâches ne montre pas non plus de processus de fonctionnement pour SearchUI.exe
ni pour Corttana. Lorsque vous essayez de réinstaller toutes les applications système définies d'usine dans une instance de PowerShell élevée avec la commande
Get-AppXPackage | Foreach {Add-AppXPackage -DisableDevelopmentMode -Register "$($_.InstallLocation)\AppXManifest.xml"
(qui a été trouvé ici ) Toutes les applications sauf pour Corttana sont réinstallées. Lors de l'exécution Get-AppXPackage *Cortana*
, aucun paquet n'est trouvé ou sortit, mais par exemple Get-AppXPackage *Edge*
donne un résultat.
Je suppose que l'erreur critique est que SearchUI.exe
(et, en fait, tout le répertoire de Cortana restant) est manquant dans le système. Même après avoir exécuté Windows Update et installer toutes les mises à jour disponibles, le problème persiste.
Y a-t-il un moyen de restaurer la fonction de recherche sur la manière dont elle est censée être?
OS: Windows 10 PRO X64 (Build 14393.187)
J'ai réussi à restaurer la fonction de recherche en exécutant la configuration Windows 10 pouvant être téléchargée via l'outil de création de média de Microsoft, qui peut être obtenu à partir de ce site Web . Comme cela a également mentionné dans ce poste Reddit , créez un point de restauration du système avant Vous exécutez cette configuration au cas où tout ne va pas dans le traiter. Plutôt sûr que par désolé.
Les étapes que j'ai faites pour restaurer mon système sont:
setup.exe
.setup.exe
.Microsoft a fourni une solution pour réinitialiser la recherche Windows via un script PowerShell et un ensemble d'étapes trouvées ici sous "Réinitialiser la recherche Windows". J'inclus les étapes ainsi que le contenu du script PowerShell "resetwindowssearchbox.ps1" ci-dessous.
Si la mise à jour Windows 10 mai 2019 ou une mise à jour ultérieure est installée, utilisez Windows PowerShell pour réinitialiser la recherche Windows. Pour le faire, suivez ces étapes.
Remarque Vous devez avoir des autorisations d'administrateur pour exécuter ce script.
- Cliquez sur le bouton de téléchargement et enregistrez resetwindowssearchbox.ps1 dans un dossier local.
- Cliquez avec le bouton droit sur le fichier que vous avez sauvegardé et sélectionnez Exécuter avec PowerShell.
- Si vous êtes posé "Voulez-vous permettre à cette application de modifier votre appareil?" Sélectionnez Oui.
- Le script PowerShell réinitialise la fonction de recherche Windows. Lorsque le mot "fait" apparaît, fermez la fenêtre PowerShell.
Si vous recevez un "ne peut pas être chargé car exécuter des scripts est désactivé sur ce système" message d'erreur, entrez la commande suivante de la ligne de commande de la fenêtre PowerShell, puis appuyez sur Entrée:
Get-ExecutionPolicy
Remarque La stratégie actuelle apparaît dans la fenêtre. Par exemple, vous pourriez voir restreint. Nous vous recommandons de noter cette valeur car vous devrez l'utiliser plus tard.
Entrez la commande suivante sur la ligne de commande de la fenêtre PowerShell, puis appuyez sur Entrée:
Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy Unrestricted
Remarque Vous recevrez un message d'avertissement qui explique les risques de sécurité d'un changement de politique d'exécution. Appuyez sur Y, puis appuyez sur ENTER pour accepter le changement. Pour en savoir plus sur les politiques d'exécution PowerShell, voir sur les stratégies d'exécution .
- Une fois que la modification de la stratégie est terminée, fermez la fenêtre, puis répétez les étapes 2 à 4. Cependant, lorsque le message "Terminé" apparaît cette fois, ne fermez pas la fenêtre PowerShell. Au lieu de cela, appuyez sur n'importe quelle touche pour continuer.
Revenir à votre paramètre de stratégie d'exécution précédente PowerShell. Pour ce faire, entrez la commande suivante de la ligne de commande de la fenêtre PowerShell, appuyez sur la barre d'espace, entrez la valeur de stratégie que vous avez notée à l'étape 5, puis appuyez sur Entrée:
Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy
Par exemple, si la politique que vous avez notée à l'étape 5 était restreinte, la commande ressemblerait aux éléments suivants:
Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy Restricted
Remarque Vous recevrez un message d'avertissement qui explique les risques de sécurité d'un changement de politique d'exécution. Appuyez sur Y, puis appuyez sur ENTER pour accepter le changement et revenir à votre paramètre de stratégie précédent.
- Fermez la fenêtre PowerShell.
[dix. Redémarrer PC] ¹
Remarque Si votre organisation a désactivé la possibilité d'exécuter des scripts, contactez votre administrateur pour obtenir de l'aide.
¹ Étape 10 ajoutée depuis que ce correctif n'a pas pris effet tant que je le recommande.
# 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"
R-R "HKLM:\SOFTWARE\Microsoft\Search\Testability"
}
function K-P {
[CmdletBinding()]
Param(
[String] $g
)
$h = Get-Process $g -ErrorAction SilentlyContinue
$i = $(get-date).AddSeconds(2)
$k = $(get-date)
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",
"$Env:localappdata\Packages\Microsoft.Search_8wekyb3d8bbwe\AC\AppCache",
"$Env:localappdata\Packages\Microsoft.Search_8wekyb3d8bbwe\AC\INetCache",
"$Env:localappdata\Packages\Microsoft.Search_8wekyb3d8bbwe\AC\INetCookies",
"$Env:localappdata\Packages\Microsoft.Search_8wekyb3d8bbwe\AC\INetHistory",
"$Env:localappdata\Packages\Microsoft.Windows.Search_cw5n1h2txyewy\AC\AppCache",
"$Env:localappdata\Packages\Microsoft.Windows.Search_cw5n1h2txyewy\AC\INetCache",
"$Env:localappdata\Packages\Microsoft.Windows.Search_cw5n1h2txyewy\AC\INetCookies",
"$Env:localappdata\Packages\Microsoft.Windows.Search_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
}
function D-E {
Write-Host "Press any key to continue..."
$Host.UI.RawUI.ReadKey("NoEcho,IncludeKeyUp") > $null
}
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 "-noexit",$Cx
Exit
}
}
$a = "searchui"
$b = "$Env:localappdata\Packages\Microsoft.Windows.Search_cw5n1h2txyewy"
if (Test-Path -Path $b) {
$a = "searchapp"
}
Write-Output "Resetting Windows Search Box"
S-D 2>&1 | out-null
R-L $a
Write-Output "Done..."
D-E