Artikel-id: 126962 - Få vist de produkter, som denne artikel refererer til.
Udvid alle | Skjul alle

Symptomer

Når du kører mange Windows-baserede programmer, vises fejlmeddelelsen Der er ikke mere hukommelse, hvis du forsøger at starte nye programmer eller prøver at bruge programmer, der allerede kører, selvom du stadig har rigelig ledig fysisk og sidefilshukommelse.

Årsag

Denne funktionsmåde kan opstå, hvis skrivebordsheapen i WIN32-undersystemet er opbrugt.

Bemærk! Dette problem opstår oftere under Windows NT 3.5, fordi standardstørrelse på skrivebordsheapen er 512 K. Under Windows NT 3.1 er standardværdien 3072 K. Standarden blev reduceret for at øge ydeevnen.

Løsning

Vigtigt! I det følgende kan du se, hvordan du redigerer registreringsdatabasen. Der kan dog opstå alvorlige problemer, hvis registreringsdatabasen ikke redigeres korrekt. Du skal derfor være meget omhyggelig med at følge den angivne fremgangsmåde. Som en ekstra sikkerhed bør du oprette en sikkerhedskopi af registreringsdatabasen, før du redigerer den. Det giver dig mulighed for at gendanne registreringsdatabasen, hvis der opstår problemer. Du kan finde flere oplysninger om, hvordan du sikkerhedskopierer og gendanner registreringsdatabasen, ved at klikke på nedenstående artikelnummer for at få vist artiklen i Microsoft Knowledge Base:
322756 Sådan sikkerhedskopieres, redigeres og gendannes registreringsdatabasen i Windows XP og Windows Server 2003
Hvis du vil have os til at løse problemet for dig, skal du gå til afsnittet Løs det for mig. Hvis du hellere vil løse problemet selv, skal du gå til afsnittet Lad mig selv løse det.

Løs det for mig



Du kan løse problemet automatisk ved at klikke på knappen eller linket Fix it. Klik på Kør i dialogboksen Filoverførsel, og følg trinnene i guiden Fix it.

Løs dette problem
Microsoft Fix it 50496

Bemærk!
  • Guiden er muligvis kun på engelsk. Den automatiske rettelse fungerer dog også for alle andre sprogversioner af Windows.
  • Hvis du ikke benytter den computer, der har problemet, kan du gemme Fix it-løsningen på et flashdrev eller en cd og derefter køre den på computeren med problemet.
  • Hvis dette stadig ikke løser problemet for dig, skal du øge computerens hukommelse.

Gå derefter til afsnittet Løste dette problemet?.



Lad mig selv løse det

Hvis du vil løse dette problem, skal du forøge størrelsen på skrivebordsheapen:
  1. Kør Registreringseditor (Regedt32.exe).
  2. Fra undertræet
    HKEY_LOCAL_MACHINE
    skal du gå til følgende nøgle:
    \System\CurrentControlSet\Control\Session Manager\SubSystems
  3. Vælg værdien Windows.
  4. Vælg Streng i menuen Redigér.
  5. Forøg parameteren SharedSection.

    Windows NT:
    SharedSection angiver systemets og skrivebordets heap ved hjælp af følgende format:
    SharedSection=xxxx,yyyy
    Tilføj ",256" eller ",512" efter tallet yyyy.

    Windows 2000, Windows XP og Windows Server 2003:
    SharedSection bruger følgende format til at angive systemets og skrivebordets heap:
    SharedSection=xxxx,yyyy,zzzz
    På 32-bit operativsystemer skal værdien yyyy forøges til "12288".
    Forøg værdien zzzz til "1024".
    For 64-bit operativsystemer skal værdien yyyy forøges til "20480".
    Forøg værdien zzzz til "1024".

Yderligere Information

Windows NT bruger en speciel hukommelsesheap til alle Windows-baserede programmer, der kører på skrivebordet. Skrivebordsheapen bruges til alle objekter (vinduer, menuer, penne, ikoner osv.). Når mange Windows-baserede programmer kører, kan denne heap løbe tør for hukommelse. Når der ikke er tilstrækkelig hukommelse til at opfylde en allokeringsanmodning, vises der normalt en fejl på systemet, som underretter brugeren om, at hukommelsen er ved at blive brugt op. Nogle programmer håndterer ikke fejlen godt, og i nogle tilfælde er der ikke nok hukommelse til at oprette dialogboksen med fejlmeddelelsen. Som følge af dette mislykkes den anmodede handling uden nogen forklaring.

SharedSection-nøglen vises som en lang streng, når den ses i Registreringseditor. Standardværdien for denne nøgle er som følger.
   %SystemRoot%\system32\csrss.exe
   ObjectDirectory=\Windows
   SharedSection=1024,3072,512
   Windows=On
   SubSystemType=Windows
   ServerDll=basesrv,1
   ServerDll=winsrv:GdiServerDllInitialization,4
   ServerDll=winsrv:UserServerDllInitialization,3
   ServerDll=winsrv:ConServerDllInitialization,2
   ProfileControl=Off
   MaxRequestThreads=16
				


Den første SharedSection-værdi (1024) definerer den heapstørrelse, der er almindelige for alle skriveborde. Dette inkluderer den globale handletabel (vinduehandler er entydige på alle maskiner) og de delte systemindstillinger (som f.eks. SystemMetrics). Du får sandsynligvis aldrig behov for at ændre denne værdi.

Den anden SharedSection-værdi (3072) kontrollerer størrelsen af den skrivebordsheap, der er tilknyttet et interaktiv vindue (brugt til Windows-objekter). Denne statiske værdi bruges til at forhindre programmer med dårlig funktionsmåde i at forbruge for mange ressourcer. Idet skrivebordsheapen er tilknyttet hver proces' adresseplads, bør denne værdi ikke indstilles til en vilkårlig høj værdi (fordi det ville nedsætte ydeevnen), men bør kun forøges tilstrækkeligt til, at de ønskede programmer kan køre.

Den tredje SharedSection-værdi (512) kontrollerer størrelsen på skrivebordsheapen for hvert skrivebord, der er tilknyttet et "ikke-interaktivt" vindue. Hvis denne værdi ikke findes, vil størrelsen på skrivebordsheapen for ikke-interaktive vinduer være den samme som den størrelse, der er angivet for interaktive vinduer (den anden SharedSection-værdi).
Du kan få flere oplysninger om parametrene for SharedSection-nøglen ved at klikke på nedenstående artikelnummer for at få vist artiklen i Microsoft Knowledge Base:
184802 PRB: Start af User32.dll eller Kernel32.dll mislykkes

Løste dette problemet?

  • Kontrollér, om problemet er løst. Hvis problemet er løst, har du afsluttet dette afsnit. Hvis problemet ikke er løst, kan du kontakte support.
  • Vi sætter pris på din feedback. Du kan give os feedback eller rapportere om problemer med denne løsning ved at oprette en kommentar på bloggen Løs det for mig eller sende os en e-mail.

Egenskaber

Artikel-id: 126962 - Seneste redigering: 11. september 2011 - Redigering: 3.0
Oplysningerne i denne artikel gælder:
  • Microsoft Windows 2000 Server
  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows 2000 Professional Edition
  • Microsoft Windows NT Workstation 3.5
  • Microsoft Windows NT Workstation 3.51
  • Microsoft Windows NT Workstation 4.0 Developer Edition
  • Microsoft Windows NT Server 3.51
  • Microsoft Windows NT Server 4.0 Standard Edition
  • Microsoft Windows NT Advanced Server 3.1
  • Microsoft Windows XP Home Edition
  • Microsoft Windows XP Professional
  • Microsoft Windows Server 2003, Datacenter Edition (32-bit x86)
  • Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
  • Microsoft Windows Server 2003, Standard Edition (32-bit x86)
  • Microsoft Windows Server 2003, Web Edition
Nøgleord: 
kbenv kbmsifixme kbfixme KB126962

Send feedback

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com