【Delphi】Win9x を不安定にするプログラムを作る
> Source: Qiita_Trend_RSS
Execute Primary Source
// Problem
Windows 9x系OSは、メモリとは別にUSERリソースやGDIリソースといったシステムリソースに制限がある。大量のコントロールを持つ業務アプリケーションなどは、これらのリソースを使い果たすことでシステムを不安定化させる恐れがある。
// Approach
Delphi 7を用い、ボタン押下時に大量のEditBoxを動的に生成するプログラムを作成してリソース枯渇を再現する。また、RSRC32.DLLを動的にロードすることで、16bitサンクを介さずにリソース残量を取得する手法も示す。
// Result
コントロールの過剰な生成はリソース不足を招く。対策として、入力項目が多い画面では、静的な部分はグラフィックとして描画し、アクティブな項目のみを実コントロールとして扱うことで、リソース消費を大幅に抑制できる。
Senior Engineer Insight
> リソース制約下でのUI設計は、現代でも極めて重要な概念である。描画とコントロールの使い分けは、メモリやリソース管理の観点から非常に合理的な最適化手法といえる。