Hej,
bliver "Class_Initialize()" (i ActiveX dll) kørt hver gang man laver et kald til komponenten, eller kun første gang den bliver kaldt?
Hvis den kun bliver kaldt første gang, kunne man så ikke åbne en database i "Class_Initialize()", for så at lukke den i "Class_Terminate()"?
Kim
Det kan du roligt gøre, da
Class_Initialize kun bliver udført, når klassen oprettes (bliver "created") første gang. Ligeledes kaldes
Class_Terminate ikke før end klassen destrueres. Det ER dog muligt at din database vil blive åbnet flere gange, hvis du opretter mere end én "instance" af en klasse.
For eksempel, hvis du har en
CDatabase klasse (hvadenten den ligger i en selvstændig DLL eller i et standard EXE project) og opretter mere en et objekt af den type, ja så kaldes
Class_Initialize en gang for hver gang du opretter et CDatabase-objekt.