デスクトップ ヒープの制限のため、"メモリ不足" というエラーが表示される場合があります
この記事は、Windows で多くのアプリケーション ウィンドウを開いたときに発生する "メモリ不足" エラーを修正するのに役立ちます。
適用対象: Windows 7、Windows Server 1、Windows Server 2012 R2
元の KB 番号: 947246
現象
Windows で多くのアプリケーション ウィンドウを開いた後、追加のウィンドウを開くことができない可能性があります。 ウィンドウが開くこともありますが、予期されるコンポーネントは含まれません。 さらに、次のようなエラー メッセージが表示されます。
メモリが不足しています
原因
この問題は、デスクトップ ヒープの制限が原因で発生します。 一部のウィンドウを閉じてから他のウィンドウを開こうとすると、これらのウィンドウが開くことがあります。 ただし、このメソッドはデスクトップ ヒープの制限には影響しません。
解決方法
重要
このセクション、方法、またはタスクには、レジストリの編集方法が記載されています。 レジストリを誤って変更すると、深刻な問題が発生することがあります。 レジストリを変更する際には十分に注意してください。 保護を強化するため、レジストリを変更する前にレジストリをバックアップします。 こうしておけば、問題が発生した場合にレジストリを復元できます。 レジストリをバックアップおよび復元する方法の詳細については、「Windows でレジストリをバックアップおよび復元する方法」を参照してください。
この問題を解決するには、次の手順に従ってデスクトップ ヒープ サイズを変更します。
[スタート] をクリックし、[検索の開始] ボックスに「regedit」と入力し、[プログラム] ボックスの一覧でregedit.exeを選択します。
注:
管理者パスワードまたは確認を求められた場合は、パスワードを入力するか、[ 続行] をクリックします。
レジストリ サブキーを
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\SubSystems
見つけて選択します。Windows エントリを右クリックし、[変更] を選択します。
[文字列の編集] ダイアログ ボックスの [値データ] セクションで、エントリを
SharedSection
見つけて、2 番目の値とこのエントリの 3 番目の値を増やします。注:
- レジストリ エントリの
SharedSection
2 番目の値は、対話型ウィンドウ ステーションに関連付けられている各デスクトップのデスクトップ ヒープのサイズです。 ヒープは、対話型ウィンドウ ステーション (WinSta0) で作成されるデスクトップごとに必要です。 値は KB 単位です。 - 3 番目
SharedSection
の値は、 非対話型 ウィンドウ ステーションに関連付けられている各デスクトップのデスクトップ ヒープのサイズです。 値は KB 単位です。 - 2 番目
SharedSection
の値に対して 20480 KB を超える値を設定することはお勧めしません。
- レジストリ エントリの
既定では、Windows レジストリ エントリには、x86 ベースのバージョンの Windows 7 Service Pack 1 に次のデータが含まれています。
%SystemRoot%\system32\csrss.exe
ObjectDirectory=\Windows
SharedSection=1024, 12288,512
Windows=On
SubSystemType=Windows
ServerDll=basesrv,1
ServerDll=winsrv:UserServerDllInitialization,3
ServerDll=winsrv:ConServerDllInitialization,2
ProfileControl=Off
MaxRequestThreads=16
Windows 7 Service Pack 1 (64 ビット) / Windows Server 2008 R2, 2012 R2 (64 ビット)
SharedSection=1024,20480,768
メモリ割り当ては、後のオペレーティング システムでは動的です。 メモリ割り当てには制限はありません。 ただし、デスクトップ ヒープにメモリを割り当てすぎると、パフォーマンスが低下する可能性があります。 そのため、20480 を超える値を設定することはお勧めしません。
注:
デスクトップ ヒープ サイズは、コンピューター上の物理 RAM の影響を受けられません。 物理 RAM を追加しても、パフォーマンスを向上させる方法はありません。
この問題は修正されましたか?
問題が修正されているかどうかを確認します。 問題が解決しない場合は、 サポートにお問い合わせください。