System.InitProc
Delphi
InitProc: Pointer; { Last installed initialization procedure }
C++
extern DELPHI_PACKAGE void *InitProc;
Propriétés
Type | Visibilité | Source | Unité | Parent |
---|---|---|---|---|
variable | public | System.pas System.hpp |
System | System |
Description
InitProc est la dernière procédure d'initialisation installée.
Attribuez une valeur à InitProc pour indiquer une procédure à exécuter au démarrage de l'application. La valeur de InitProc est une procédure sans paramètres. Par exemple :
- Dans Delphi, l'affectation peut être effectuée dans la section initialisation d'une unité :
procedure MyInitProcedure; ... initialization InitProc := @MyInitProcedure; end.
- Dans C++, l'affectation est plus facilement effectuée dans le fichier source du projet.
WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int) { try { // L'appel doit précéder l'appel à Application->Initialize(); System.InitProc = MyInitProcedure; Application->Initialize(); Application->CreateForm(__classid(TForm1), &Form1); Application->Run(); } catch (Exception &exception) { Application->ShowException(&exception); } catch (...) { try { throw Exception(""); } catch (Exception &exception) { Application->ShowException(&exception); } } return 0; }
Vous ne pouvez attribuer qu'une seule procédure d'initialisation à la variable InitProc. Si votre application définit plusieurs procédures d'initialisation, seule la dernière affectation à InitProc est exécutée. Pour autoriser l'exécution d'autres procédures d'initialisation, vous devez "enchaîner " les procédures, en appelant la valeur précédemment affectée à InitProc à partir de la nouvelle valeur.