我有一台安装了所有最新 Windows 更新的 Windows 2008 R2 SP1 服务器。我尝试运行 PowerShell,但出现以下错误:
内部 Windows PowerShell 错误。加载托管 Windows PowerShell 失败,错误代码为 80070002
然后它立即返回到 cmd 行。
我已经运行过了sfc /scannow
并且它已经恢复干净了。
我试过跑步powershell -noprofile
答案1
卸载并重新安装Windows 管理框架 4.0(KB2819745)解决了错误。
答案2
我使用这个脚本测试了所有的.NET 文件夹
@echo off
cd C:\Windows\Microsoft.NET\assembly\GAC_MSIL
for /D %%z in (*) do (
echo %%z
rename %%z %%z1
powershell 'powershell works'
rename %%z1 %%z
pause
echo.
)
在 236 个文件夹中,唯一出现错误 80070002 的是
Microsoft.PowerShell.ConsoleHost
你可以像这样修复 PowerShell
wusa/提取:.Windows6.1-KB2819745-x64-多包.msu dism /online /remove-package /packagepath:Windows6.1-KB2819745-x64.cab dism /online /添加包/包路径:Windows6.1-KB2819745-x64.cab