内部的Windows PowerShell错误。 失败80070002

我有一个Windows 2008 R2 SP1服务器,当前所有的Windows更新。 我正在尝试运行PowerShell,但它给出了以下错误:

内部Windows PowerShell错误。 加载托pipe的Windows PowerShell失败,错误为80070002

然后立即返回到cmd行。

我已经运行sfc /scannow ,它已经回来干净。

我曾尝试运行powershell -noprofile

卸载并重新安装Windows Management Framework 4.0 (KB2819745)解决了错误。

我用这个脚本来testing所有的.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 / extract :.  Windows6.1-KB2819745-x64的MultiPkg.msu
 dism / online / remove-package /packagepath:Windows6.1-KB2819745-x64.cab
 dism / online / add-package /packagepath:Windows6.1-KB2819745-x64.cab