Die
VCL kapselt ja nur diesen
WinAPI Aufruf und der Set definiert diese Konstanten entsprechend. Intern macht der set nichts anderes als dieses nachzubilden was du machst. Der MessageDlg() würde in Delphi für Delphi entwickelt und ist dort durch die sprachlichen Möglichkeiten entsprechend einfacher zu verwenden. Es schreibt keiner vor, nicht die MessageBox zu verwenden und entsprechend mit | die Konstanten zu verodern. Mit anderen Worten: mit der entsprechenden Wahl des Aufrufs kann man sich das ganze verkomplizieren. Die MessageBox() kann auch einfach Application->Title.c_str() beim Aufruf mitgegeben werden und man erhält das gleiche Resultat wie ein MessageDlg() Aufruf.