私はレガシーDelphiアプリケーションのメンテナーです。このプログラムを実行しているマシンApplication Error
では、このDelphiアプリを参照するキャプションと次のようなメッセージが表示されることがあります。
「...」の命令は「...」のメモリを参照していました。メモリを「読み取る」ことができませんでした。
[OK]をクリックして、プログラムを終了します。
タスクマネージャーによると、このメッセージボックスに属するプロセスはcsrss.exeです。このエラーの根本的な原因を見つけるための体系的な方法は何でしょうか?
問題は、このDelphiプログラムはかなり複雑であり、エラーメッセージが比較的まれにしか表示されないため、コードをステップスルーしてエラーの原因となる部分を見つけることができないことです。さらに、アプリはユーザーの邪魔をせずに自動的に実行されるため、メッセージが表示されたときにユーザーに何をするかを尋ねることはできません。アプリケーションログとシステムログは問題を示していません。メッセージボックスが表示されても、アプリは動作を停止しません。
誰かが以前にそのようなエラーメッセージに遭遇し、問題を解決できたことを願っています。よろしくお願いします。