Entwickler-Ecke
Delphi Language (Object-Pascal) / CLX - Ableitung von TIdTCPServer - Problem mit Konstruktor
Stevie - Mi 10.09.03 16:09
Titel: Ableitung von TIdTCPServer - Problem mit Konstruktor
Hallo!
Ich hoffe, ihr könnt mir helfen. Ich versuche eine Ableitung von TIdTCPServer zu erstellen. Dabei hab ich ein Problem mit Create.
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: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: 50: 51:
| type TMyServer = class(TIdTCPServer) private FUserManager: TIdUserManager; procedure SetUserManager(const Value: TIdUserManager); protected public constructor Create(AOwner: TComponent); override; destructor Destroy; override; published property UserManager: TIdUserManager read FUserManager write SetUserManager; end;
procedure Register;
implementation
procedure Register; begin RegisterComponents('Meine Komponenten', [TMyServer]); end;
constructor TMyServer.Create(AOwner: TComponent); var ACommandHandler: TIdCommandHandler; begin inherited Create(AOwner); SetIntercept(TIdServerIntercept.Create(Self)); FIntercept.Name := 'Intercept'; SetIOHandler(TIdServerIOHandlerSocket.Create(Self)); FIOHandler.Name := 'IOHandler'; SetThreadMgr(TIdThreadMgrDefault.Create(Self)); FThreadMgr.Name := 'ThreadMgr'; SetUserManager(TIdUserManager.Create(Self)); FUserManager.Name := 'UserManager'; FUserManager.CaseSensitiveUsernames := True; FUserManager.CaseSensitivePasswords := True; ACommandHandler := FCommandHandlers.Add; ACommandHandler.Command := '/quit'; ACommandHandler.Disconnect := True; ACommandHandler.Name := 'CommandHandlerQuit'; ACommandHandler.OnCommand := CommandHandlerQuitCommand; ACommandHandler.ReplyNormal.NumericCode := CodeCommandQuit; ACommandHandler.ReplyNormal.Text.Add(TextCommandQuit); end; |
Wenn ich das override in der Deklaration weglasse, führt er meinen Code nicht aus. Bitte helft mir!!!
barfuesser - Mi 10.09.03 16:15
Warum willst Du denn das override; weglassen? Es ist doch genau richtig.
barfuesser
Stevie - Mi 10.09.03 16:21
| barfuesser hat folgendes geschrieben: |
| Warum willst Du denn das override; weglassen? Es ist doch genau richtig. |
Öhm, was red (schreib) denn da??? Natürlich darf ich das override nicht weglassen! Mien Prob ist, dass die Erstellung dieser Komponenten
Delphi-Quelltext
1: 2: 3: 4: 5: 6:
| SetIntercept(TIdServerIntercept.Create(Self)); FIntercept.Name := 'Intercept'; SetIOHandler(TIdServerIOHandlerSocket.Create(Self)); FIOHandler.Name := 'IOHandler'; SetThreadMgr(TIdThreadMgrDefault.Create(Self)); FThreadMgr.Name := 'ThreadMgr'; |
nicht so geschieht, wie wenn ich sie auf ein Form packen würde und die beim TIdTCPServer eintragen würde! Warum?
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!