Bonjour,
Voilà ma question, tout bête.
En regardant la VCL je m'aperçois que pour une application standard (Windows avec GUI) l'instance globale "Application" était créé dans l'unité "Controls" via un appel à "Application := TApplication.Create(nil);" dans la méthode "InitControls".
Oh désespoir cela réduirait-il à néant la possibilité de dériver "TApplication" pour par exemple créer des projets d'un type plus spécifique que "Application Windows avec GUI) directement depuis l'EDI Delphi et dont la variable globale ne serait pas de type "TApplication" mais "TXXXApplication" (comme pour les services ou composants du panneau de configuration) qui hériterait du "TApplication" défini dans "Forms".
Pour cela il aurait juste fallu que Borland déclare une variable globale dans "Controls" qui soit du type 'class of TApplication' et d'instancier "Application" avec... Hors Delphi 2009 ne semble pas inclure de variable de ce type.
Comment peut-on contourner cela ? Peut-être redéclarer un type dérivé de TApplication qui contienne l'instance globale "Application" en interne et qui redirige toutes les méthodes de base de TApplication en les appelant via "Application" ? Ya un moyen de faire ça propre et en assurant une compatibilité future (si jamais on ajoutait de nouvelles méthodes/propriétés à la classe "Application") ?
Partager