Wie die private Methode TStreamReader.FillBuffer in Delphi 10.1 Berlin zuzugreifen, können wir es mit einer Klasse Helfer vor 10.1 tat - aber die vorgeschlagene Lösung funktioniert nicht:Zugriff auf die private Methode TStreamReader.FillBuffer in Delphi 10.1 Berlin?
uses System.Rtti;
procedure TForm1.FormCreate(Sender: TObject);
begin
Assert(Assigned(TRttiContext.Create.GetType(TStreamReader).GetMethod('FillBuffer')),
'Failed');
end;
es NIL nur weil GetMethod kehrt ausfällt. Irgendwelche Ideen, warum das scheitert?
Edited: weiß ich wollen, warum es nicht
Es schlägt fehl, wahrscheinlich, weil es nicht mit erweiterten RTTI kompiliert wurde aktiviert. –
Haben Sie @ LURDs Antwort hier gesehen: http://StackOverflow.com/Questions/36716363/How-to-Access-Private-Methods-Without-Helpers/37761852#37761852 – MartynA
@Rudy: Ich habe versucht, {$ METHODINFO ON} in meiner unit1.pas, aber ich denke, das sollte in system.classes getan werden (wo TStreamReader deklariert ist). – cydo