Hallo zusammen,
ich hab zuletzt vor Ewigkeiten delphi programmiert und muss jetzt für ein Projekt nochmal ran (mit Delphi 7). Sehr weit komme ich allerdings nicht, schon beim Aufruf des Konstruktors meiner Klasse scheppert es.
Hier mal der Code, vielleicht sieht ja jemand etwas ungewöhnliches ...
Klassendefinition:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29:
| type TDBConn = class
private
mSession : TOracleSession; mPackage : TOraclePackage; mLevel : Integer; mConnStr : String; mStatus : Integer; procedure Init(); procedure Login(); procedure Logout(); procedure UpdateStatus(); function IsConnected() : Boolean;
public
constructor Create(connstr : string; level : integer); Overload; constructor Create(connstr : string); Overload;
procedure MyDestroy(Sender : TObject);
end; |
Konstruktor-Implementierung :
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11:
| constructor TDBConn.Create(connstr : string; level : integer); begin inherited Create(); mConnStr := connstr; mLevel := level;
Init(); end; |
Aufruf / Instanziierung der Klasse :
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15:
| var DB : TDBConn;
initialization TActiveFormFactory.Create( ComServer, TActiveFormControl, BXCT, Class_BXCT, 1, '', OLEMISC_SIMPLEFRAME or OLEMISC_ACTSLIKELABEL, tmApartment);
DB := TDBConn.Create('test', 1); end. |
Ich hab einen Breakpoint beim Aufruf von TDBConn.Create gesetzt und gehe dann mit F7 weiter. Er springt dann auch in den Konstruktor, allerdings knallts beim "inherits Create();" dann schon mit Zugriffsverletzung. Ich hab auch schon versucht, das inherits komplett weg zu lassen, dann knallt es mit derselben Zugriffsverletzung bei der ersten Zuweisung, also "mConnStr := connstr;"
Ich bin momentan ziemlich ratlos, wäre super wenn mir jemand auf die Sprünge helfen könnte...
Danke schonmal
Moderiert von
Narses: Topic aus Sonstiges (Delphi) verschoben am Mo 20.06.2011 um 17:25