Free Pascalで記述されたコンソールアプリケーションがありますが、ほとんどの大規模なアプリケーションと同様に、クラッシュすることがあります。このアプリケーションは稼働しているので、私は通常、クラッシュ時にスタックトレースを書き留めるように人々に依頼します。デバッグとlineinfoの両方で配布します。ただし、アプリケーションはFPC video.pas出力を使用し、テキスト出力のスタックトレースが表示されない場合があります。
未処理の例外に書き込まれたテキストをスタックトレースでインターセプトして、ファイルに書き込むことができるようにする方法はありますか?FPCビデオはどういうわけかそれで動作しないので、標準エラーをファイルにパイプすることはできません。また、バッチファイルやシェルファイルではなく、実行可能ファイルを実行するだけでよいのです。
例として、これをファイルまたは他の出力ソースにキャッチしたいと思います。
ERangeError : Range check error∙
$0048C0EA TCELLS__GETCELL, line 104 of dfmap.pas
$004AD133 TDOOMGENERATOR__GENERATECITYDUNGEON, line 397 of dfdungen.pas
$004AF87D TDOOMGENERATOR__GENERATE, line 760 of dfdungen.pas
$0041293B TDOOM__RUN, line 354 of doombase.pas
$00401CD6 main, line 51 of doomrl.pas
それをきれいに行う可能性はありますか?