क्या आरटीआई के साथ इंटरफेस की संपत्तियों का पता लगाने का कोई तरीका है?डेल्फी आरटीआई: इंटरफेस के गुणों का अन्वेषण करें?
निम्नलिखित कोड काम नहीं करता:
procedure ExploreProps;
var
Ctx: TRttiContext;
RttiType: TRttiType;
RttiProp: TRttiProp;
begin
RttiType := Ctx.GetType(TypeInfo(IMyInterface));
for RttiProp in RttiType.GetProperties do
Writeln(RttiProp.ToString);
end;
किसी को भी एक समाधान कैसे सही ढंग से यह करने के लिए है?
ठीक नहीं है, लेकिन में जानने के लिए इंटरफेस तरीकों या तो काम नहीं करता है ... बस RttiType.GetMethods का उपयोग कर लूप के लिए प्रतिस्थापित किया गया, अभी भी कोई परिणाम नहीं है। –
@ क्रिस्टियन: मैंने बस आरटीटीआई सिस्टम के लिए कोड देखा, और मानक पुस्तकालयों में कई इंटरफेस उनके लिए उत्पन्न आरटीटीआई के साथ स्थापित किए गए हैं। मुझे यकीन नहीं है कि अंतरफलक प्रकारों के लिए विस्तारित आरटीटीआई उत्पन्न करने के लिए नियम क्या हैं, क्योंकि यह कक्षाओं या अभिलेखों के लिए विस्तारित आरटीटीआई उत्पन्न करने से अलग है। शायद बैरी केली या एलन बाउर इसका जवाब दे सकते हैं? –
इंटरफ़ेस के तरीकों की रिपोर्ट करने के लिए 'TRttiType.GetMethods()' के लिए एक इंटरफ़ेस प्रकार को '{M +}' लागू करने की आवश्यकता है। –