Это была проблема, с которой я сталкивался гораздо чаще в Windows XP. Я думал, что избавлюсь от этого сейчас, но ошибался. Похоже, что некоторые приложения, в частности, связанные со службами, в нашем случае Symantec Endpoint Protection, не может должным образом освободить дескрипторы ключей реестра. Очевидно Ничего нового. И нет, я не использую BitLocker в этом случае, и я почти уверен, что мы не включили защиту от взлома (это не по умолчанию в BIOS, и мы такие ленивые). Кажется UPHClean может вообще не поддерживаться в Windows 7. Есть ли другой способ принудительно отключить дескрипторы реестра?
Предупреждение: я не рекомендую это делать!
Но раз уж вы спросили ...
Foreach($p In Get-Process)
{
$Handles = \\live.sysinternals.com\Tools\handle.exe -p $p.ProcessName -a
ForEach($h In $Handles)
{
If($h.Contains(": Key"))
{
\\live.sysinternals.com\Tools\handle.exe -c $h.Split(':')[0].Trim() -p $p.Id
}
}
}
Это было написано на Powershell 3, но это также будет работать в Powershell 2, который встроен в Windows 7 из коробки.
Но, пожалуйста, не просто скопируйте и вставьте мой сценарий и запустите его. Подумайте о том, какой ущерб он нанесет вашей системе, если вы волей-неволей попытаетесь закрыть все дескрипторы реестра в системе. Например, моя первая рекомендация - охватить это только процесс, который ошибочно держит ручки открытыми.
Лично я очень подозреваю, что есть лучший способ решить любую вашу проблему, чем принудительное закрытие дескрипторов. И враждебное отношение, которое вы проявили к Windows в комментариях к ответу @MattLyons, заставляет меня думать, что вы, возможно, не в своей тарелке и, возможно, неправильно понимаете проблему. Возможно, будет полезнее сообщить нам о реальной проблеме, с которой вы столкнулись. Возможно, принудительное закрытие маркеров - не лучший способ решить эту проблему.
Но я не могу устоять перед соблазном написать что-нибудь. Это похоже на болезнь.
Procexp можно закрывать ручки. Используйте Find-> Find Handle или DLL, чтобы найти тот, который вам нужен, щелкните его (он появится в списке на нижней панели) и щелкните правой кнопкой мыши-> закрыть.