Warum dauert es so lange, bis Powershell startet?

20

Wenn ich die PowerShell hochfahre, dauert es ca. 10-15 Sekunden, bis ich eine Aufforderung bekomme. Weiß jemand, was es macht, wenn Sie es zum ersten Mal starten, was dazu beitragen könnte? Dies ist XP Pro, 2 GB Arbeitsspeicher, nur Outlook und Firefox werden interaktiv ausgeführt, ziemlich direkt.

Squillman
quelle

Antworten:

15

Das Powershell-Team hat eine Lösung für dieses Problem in seinem Blog .

Inhalt des Skripts von der genannten Site 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$_"}
         }
      }
aharden
quelle
1
Ich habe das Update-Gac.ps1-Skript ausgeführt, das nichts getan hat, aber festgestellt, dass auf dem Post erwähnt wird, dass es sich um einen v1-Fehler handelt und in v2 behoben ist. Ich habe v2 CPT3 installiert, das in 1-2 Sekunden startet. Funktioniert für mich, danke!
squillman
1

Haben Sie eine schuppige / fehlende Internetverbindung?

Es kann von der Windows-Sicherheit abhängen, ob versucht wird, die Zertifizierungsstelle zu kontaktieren, um die Zertifikatssperrliste abzurufen. Wenn keine Internetverbindung besteht, müssen Sie auf die Zeitüberschreitung warten.

Bearbeiten:

Sie können versuchen, dies mit dem Process Explorer von Sysinternal (/ Microsoft) zu debuggen. Vielleicht können Sie sehen, auf welche Ressourcen der Prozess zugreift.

splattne
quelle
Nee. Ich muss sowieso nach
Sperrlisten suchen
0

Wie lange dauert es, um sofort eine andere Instanz zu starten?

Wenn viel schneller, dann sehen Sie die Zeit, die zum Laden von .NET, PSH und Snapins benötigt wird. Wenn nicht, dann wahrscheinlich profilbezogen (entweder PSH-Profil oder so etwas wie Kontaktaufnahme mit AD 1 ).

1 Ich habe dies beim AD-Provider von PSCX festgestellt, wenn ich aus der Ferne arbeite.

Richard
quelle
Gute Gedanken! Aber genauso viel Zeit ...
squillman
Wir haben die automatische Erstellung eines AD-Laufwerks jetzt in Pscx 1.2 (jetzt in der öffentlichen Beta! Pscx.codeplex.com )
deaktiviert