富士通

NetCOBOL 技術情報:トラブルシューティング

エラー

Windows x86

NetCOBOL

Q

MeFt/Webを利用したCOBOLアプリケーションの実行で、JMP0092I-Uが発生します。

A

原因としてデスクトップヒープの枯渇が考えられます。起動するアプリケーション数を制限する、またはデスクトップヒープの利用方法をチューニングするなどの方法でデスクトップヒープの枯渇が発生しないように回避してください。

Windows NT系列のWindowsシステムには、デスクトップヒープというメモリ資源があります。このデスクトップヒープは、システム全体としてサイズが有限なため、枯渇してしまうとアプリケーション起動に失敗するなど、様々な現象が発生します。
メッセージ「JMP0092I-U ウィンドウクラス '~' の登録に失敗しました」が発生する現象についても、アプリケーションのプロセスが多数起動してデスクトップヒープが枯渇した状態で、新たにプロセスを起動することで発生します。
Windowsシステムの制限であるため、MeFt/Webを含むNetCOBOL製品側で対策を講じることはできません。また、アプリケーションのプロセスがデスクトップヒープをどれだけ使用するか計測する方法について、Microsoft社から具体的な方法は提示されていません。
【ご参考】 Microsoftのサポートオンライン(Microsoft社のページへリンク)

なお、以下のMicrosoft社の記載内容に該当する場合は、 イベントログに「イベント ID 243」が記録されます。