为什么Powershell初始化需要这么长时间?


20

当我启动powershell时,它需要约10-15秒的时间来初始化并提示我。有人知道您初次启动时可能在做什么吗?这是XP Pro,2 GB的内存,只有Outlook和Firefox可以交互运行,相当简单。

Answers:


15

Powershell团队在其博客上对此进行修复

来自该站点的脚本内容提到了 Update-gac.ps1

Set-Alias ngen (Join-Path ([System.Runtime.InteropServices.RuntimeEnvironment]::GetRuntimeDirectory()) ngen.exe)
[AppDomain]::CurrentDomain.GetAssemblies() |
    sort {Split-path $_.location -leaf} |
    %{
        $Name = (Split-Path $_.location -leaf)
        if ([System.Runtime.InteropServices.RuntimeEnvironment]::FromGlobalAccessCache($_))
        {
            Write-Host "Already GACed: $Name"
        }else
        {
            Write-Host -ForegroundColor Yellow "NGENing      : $Name"
            ngen $_.location | %{"`t$_"}
         }
      }

1
我运行了Update-Gac.ps1脚本,该脚本什么也不做,但是注意到他们在帖子中提到这是v1错误,并且已在v2中修复。我安装了v2 CPT3,可在1-2秒内启动。为我工作,谢谢!
squillman,2009年

1

您的互联网连接不稳定/丢失吗?

可能取决于Windows Security尝试联系证书颁发机构以获取证书吊销列表。如果没有互联网连接,则必须等待超时。

编辑:

您可以尝试使用Sysinternal(/ Microsoft)的Process Explorer进行调试。也许您可以看到该进程访问了哪些资源。


不。我仍然要检查撤销清单...
squillman

0

立即启动另一个实例需要多长时间?

如果要快得多,那么您会看到加载.NET,PSH和Snapins所需的时间。如果不是,则可能与配置文件相关(PSH配置文件或类似联系AD 1的内容)。

1在远程工作时,我已经在PSCX的AD提供程序中看到了这一点。


好主意;心存善念;睿智哲思!但是同样长的时间...
squillman

现在,我们已在Pscx 1.2(现已在公共Beta版中!pscx.codeplex.com)中禁用了自动创建AD驱动器的功能
2009年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.