System.InitProc
Delphi
InitProc: Pointer; { Last installed initialization procedure }
C++
extern DELPHI_PACKAGE void *InitProc;
Eigenschaften
Typ | Sichtbarkeit | Quelle | Unit | Übergeordnet |
---|---|---|---|---|
variable | public | System.pas System.hpp |
System | System |
Beschreibung
Ist die zuletzt installierte Initialisierungsprozedur.
Mit InitProc können Sie eine Prozedur festlegen, die beim Start der Anwendung ausgeführt wird. Der Wert von InitProc ist eine Prozedur ohne Parameter. Zum Beispiel:
- In Delphi kann die Zuweisung im Initialisierungsabschnitt einer Unit erfolgen:
procedure MyInitProcedure; ... initialization InitProc := @MyInitProcedure; end.
- In C++ erfolgt die Zuweisung am besten in der Projektquelldatei.
WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int) { try { // Beachten Sie, dass der Aufruf vor dem Aufruf von Application->Initialize() erfolgen muss; 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; }
Der Variable InitProc kann nur eine Initialisierungsprozedur zugewiesen werden. Wenn in der Anwendung mehrere Initialisierungsprozeduren definiert sind, wird nur die letzte, an InitProc zugewiesene ausgeführt. Damit auch andere Initialisierungsprozeduren ausgeführt werden können, müssen Sie die Prozeduren verketten. Rufen Sie dazu den zuvor zugewiesenen Wert von InitProc aus einer neuen Initialisierungsprozedur auf.