Symptom

Bei Projekten mit sehr vielen Prozessen (ca. 80 -100) können ab einer gewissen Grenze keine weiteren Prozesse mehr hinzugefügt bzw. gestartet werden. Dies tritt insbesondere dann auf, wenn der Dienst mit einem Benutzerkonto angemeldet ist.


Ursache

Für Dienste greift unter Windows allgemein eine Begrenzung der Größe des sogenannten "Desktop heap".


  • Dienste erhalten einen kleineren Desktop heap als interaktive Sitzungen.
  • Die Größe des Desktop heap limitiert die Anzahl von Fenstern einer Anwendung.
  • Der Dienst "Document Processor CORE3 Server" erzeugt eines oder mehrere Fenster in Form von Prozessen.


Warnung

Die beschriebene Lösung hat Auswirkungen auf alle Dienste des Rechners. Nehmen Sie deshalb die Änderung nur in notwendigem Ausmaß vor, um die Ressourcen des Rechners zu schonen. Legen Sie zuvor Sicherungen des Rechners und/oder der Registry an.


Weitergehende Informationen zum Lösungsansatz erhalten Sie hier: http://blogs.msdn.com/b/ntdebugging/archive/2007/01/04/desktop-heap-overview.aspx


Lösung

Es ist eine Anpassung in der Registry notwendig.


  1. Öffnen Sie das Tool regedit.exe
  2. Öffnen Sie den folgenden Eintrag: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\SessionManager\SubSystems\Windows
  3. Der folgende Abschnitt im enthaltenen String ist relevant: SharedSection=1024,20480,768
  4. Erhöhen Sie den dritten Wert, um den Desktop Heap für Dienste zu vergrößern (z.B. auf 1024 oder 2048 usw., keinesfalls größer als 8192)
  5. Es ist ein abschließender Rechnerneustart notwendig