Bei TClientIdentifier handelt es sich um eine Klasse von TObject die als einzige Definition mac:string; besitzt.
Bei
Indy 10 wird die eigene Kontextklasse von TIdServerContext abgeleitet und dann dem Server über die Property ContextClass zugewiesen. Der Server erzeugt dann automatisch beim Connect eine Instanz dieser selbst definierten Kontextklassse.
Delphi-Quellcode:
TClientIdentifier = class(TIdServerContext)
public
Mac: string;
end;
Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin
IdServer.ContextClass := TClientIdentifier;
end;
Damit braucht man auf AContext.Data nicht mehr zuzugreifen, sondern hat direkt ein passendes Objekt:
Delphi-Quellcode:
TClientIdentifier(AContext).Mac := Data.Mac;
Ob das den Fehler erklärt kann ich nicht sagen, aber man kann sicher mit dem Debugger in die OnExecute Methode hinein und sehen was nach der Zuweisung geschieht.
Hope this helps,