Jap. Da ich aber nicht über die neue
RTTI verfüge, krieg ich die Infos über die Parameter und Aufruf-Konventionen nur über die
VMT und damit letztlich nur aus dem published Bereich.
Was mich verwundert ist nur, das bei obigem Beispiel der Compiler einen Fehler rauswirft (eben interner Fehler), während sowas:
Delphi-Quellcode:
$METHODINFO on}
type
TMyObject = class(TObject)
private
protected
public
published
procedure DoSomething(caption:widestring);
end;
Kein Problem ist. Widestring ist ja (intern betrachtet) auch nix anderes als ein Pointer. Sogar var oder out Parameter (auch wieder nix anderes als Pointer) frist der Compiler ohne zu Mucken.
Nur eben Zeiger (egal ob typisiert oder untypisiert) mag er so garnicht in dem Bereich.