User32.dll の初期化失敗エラーへの対処方法

文書翻訳 文書翻訳
文書番号: 142676 - 対象製品
この記事は、以前は次の ID で公開されていました: JP142676

重要 : この資料には、レジストリの編集方法が記載されています。万一に備えて、編集の前には必ずレジストリをバックアップし、レジストリの復元方法を理解しておいてください。バックアップ、復元、および編集方法の詳細を参照するには、以下の「サポート技術情報」 (Microsoft Knowledge Base) をクリックしてください。
256986 Microsoft Windows レジストリの説明
すべて展開する | すべて折りたたむ

現象

サービスを開始しようとすると、次のメッセージがダイアログ ボックスに表示される場合があります。
ServiceName - ダイナミック リンク ライブラリ c:\windows\system32\user32.dll の初期化に失敗しました。プロセスは異常終了します。

原因

システムで、開始するサービス用の新しいデスクトップ ヒープを作成するためのメモリが不足しています。

解決方法

警告 : レジストリ エディタの使い方を誤ると、深刻な問題が発生することがあります。最悪の場合、オペレーティング システムの再インストールが必要になることがあります。マイクロソフトは、レジストリ エディタの誤用により発生した問題に関しては、一切責任を負わないものとします。レジストリ エディタは、自己の責任においてご使用ください。


この現象を修正するには、レジストリを編集し、この問題の影響を受けたコンピュータを再起動する必要があります。
  1. レジストリ エディタ (Regedt32.exe) を起動します。
  2. HKEY_LOCAL_MACHINE サブツリーの下にある次のサブキーを見つけてクリックします。

    \System\CurrentControlSet\Control\Session Manager\ SubSystems\Windows
このデータのデフォルト値は、次のとおりです (全体で 1 行)。

%SystemRoot%\system32\csrss.exe ObjectDirectory=\Windows
   SharedSection=1024,3072 Windows=On SubSystemType=Windows
ServerDll=basesrv,1 ServerDll=winsrv:UserServerDllInitialization,3
ServerDll=winsrv:ConServerDllInitialization,2 ProfileControl=Off
MaxRequestThreads=16
				


次の手順に従って、この値を変更する必要があります。

SharedSection の値を定義している部分を探し、2 番目の数字の後に ",512" を付け加えます。つまり、この値は次のようになります。

%SystemRoot%\system32\csrss.exe ObjectDirectory=\Windows
SharedSection=1024,3072,512 Windows=On SubSystemType=Windows
ServerDll=basesrv,1 ServerDll=winsrv:UserServerDllInitialization,3
ServerDll=winsrv:ConServerDllInitialization,2 ProfileControl=Off
MaxRequestThreads=16
				


この変更を加えた後 Regedt32 を終了し、サーバーを再起動します。

この変更により、非対話型サービスによって作成されるデスクトップ ヒープのサイズが 512 KB に制限されます。この値は、ほとんどのサービスにとって十分な大きさです。

任意指定の 3 番目の値を追加することで、非対話型デスクトップ (サービス) のデスクトップ ヒープ サイズが 512 KB と定義されます。デフォルトでは、対話型デスクトップと同じデスクトップ ヒープ サイズが使用される場合があります。この値は 2 番目の値 (3072 つまり 3 MB) で定義されています。この 3 番目の値に設定できる最小値は 128 です。128 よりも小さな値を指定した場合でも、128 が使用されます。この値を 512 に設定すると、上記の問題が再発する前に、およそ 90 個までのサービスを開始することができます。

状況

この動作は仕様です。レジストリ エントリを使用すると、デフォルトの設定値を再定義することができます。

詳細

関連情報を参照するには、以下の「サポート技術情報」 (Microsoft Knowledge Base) をクリックしてください。
184802 [PRB] User32.dll または Kernel32.dll の初期化に失敗する

関連情報

この資料は米国 Microsoft Corporation から提供されている Knowledge Base の Article ID 142676 (最終更新日 2004-04-03) を基に作成したものです。

プロパティ

文書番号: 142676 - 最終更新日: 2011年7月9日 - リビジョン: 3.2
この資料は以下の製品について記述したものです。
  • Microsoft Windows NT Workstation 4.0 Developer Edition
  • Microsoft Windows NT Server 4.0 Standard Edition
キーワード:?
kbenv KB142676
"Microsoft Knowledge Baseに含まれている情報は、いかなる保証もない現状ベースで提供されるものです。Microsoft Corporation及びその関連会社は、市場性および特定の目的への適合性を含めて、明示的にも黙示的にも、一切の保証をいたしません。さらに、Microsoft Corporation及びその関連会社は、本文書に含まれている情報の使用及び使用結果につき、正確性、真実性等、いかなる表明・保証も行ないません。Microsoft Corporation、その関連会社及びこれらの権限ある代理人による口頭または書面による一切の情報提供またはアドバイスは、保証を意味するものではなく、かつ上記免責条項の範囲を狭めるものではありません。Microsoft Corporation、その関連会社 及びこれらの者の供給者は、直接的、間接的、偶発的、結果的損害、逸失利益、懲罰的損害、または特別損害を含む全ての損害に対して、状況のいかんを問わず一切責任を負いません。(Microsoft Corporation、その関連会社 またはこれらの者の供給者がかかる損害の発生可能性を了知している場合を含みます。) 結果的損害または偶発的損害に対する責任の免除または制限を認めていない地域においては、上記制限が適用されない場合があります。なお、本文書においては、文書の体裁上の都合により製品名の表記において商標登録表示、その他の商標表示を省略している場合がありますので、予めご了解ください。"

フィードバック

 

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