デスクトップ・アプリケーション・ヒープ不足エラーに対処する方法
- レジストリエディタを起動して
「 HKEY_LOCAL_MACHINE → SYSTEM → CurrentControlSet → Control → Session Manager → SubSystems 」 とたどって キーを開きます。

- 右ウィンドウに表示される 「 Windows 」 アイコンを ダブルクリック か、ここを右クリックして、[修正]を クリックする。
- すると次のような[文字列の編集]ダイアログが表示される。
[文字列の編集]ダイアログ
デスクトップ・アプリケーション・ヒープを変更するには、ここで[値のデータ]にあるパラメータを修正する。

上の画像の赤枠は ( %SystemRoot%\system32\csrss.exe ) Win32サブシステムの起動時のパラメータが保存されている。
csrss.exe は クライアント・サーバ・ランタイム・プロセス用のモジュール。
- 「SharedSection」のパラメータ[値のデータ]でカーソルを移動し、「SharedSection」パラメータを見付ける。

- 上の画像の赤枠 ( SharedSection=1024,3072 ) は
デスクトップ・アプリケーション・ヒープの初期値を決定するのは、「SharedSection=xxx,yyy」の「yyy」の値。
ここにKbytes単位でサイズを指定する。
Windows 2000およびWindows XPでは、デフォルト設定は次のようになっている。
SharedSection=1024, 3072
いずれも、第1パラメータ(1024)はグローバル・ハンドル・テーブルなど、
すべてのデスクトップで共有されるシステム設定用領域で、これを変更する必要はないと思います。
デスクトップ・アプリケーション・ヒープのWindows NT 3.5でのデフォルト・サイズは512Kbytes、 Windows 2000/XPでのデフォルト・サイズは3Mbytes(3072Kbytes)である。
ヒープ不足を解消するには、この値を増加させるわけだが、この値がWindowsシステムに与える影響は大きいので、
くれぐれも慎重に増加させていただきたい。
通常は256Kbytesや512Kbytes単位に増加させれば問題を解消できるはずです。
(それでも問題を回避できないときは、前述のとおり別の道を検討すべきである)。
場合によっては、「SharedSection=」オプションに第3のパラメータが存在することがある。
SharedSection=1024, 3072, 512
この第3のパラメータ(512)は、
ノン・インタラクティブなプロセスに割り当てられるデスクトップ・ヒープのサイズである。
こちらも修正する必要はまずないと思います。
- 以上、設定を変更したら、レジストリエディタ を閉じて Windows を 再起動 します。
|