تطبيق cusإلىm سمة مدارة علامة إلى COM Get/تعيين خصائص
يمكن أن تكون واجهات COM غير مدار قابل للتعداد الكائنات التي يمكنها الوصول إلى عمليات التعداد من خلال أسلوب العنصر. في إطار عمل.NET، th هو أسلوب هو المعينة على أنها .العنصر . الطريقة الوحيدة للوصول إلى ترتيب هو الأسلوب بشكل صحيح هو إضافة علامة للعنصر كما قد تتغير propget من خلال السمات في الIDL ملف، إلا أن القيام بهذا توقيع الرقمي للدالة في مكتبة النوع. يمكنك استخدام هذه السمة cusإلىm إلى علامة الأسلوب ك propget عند استيراد. بناء جملة السمة المخصصة هو كما يلي:
GUID = 2941ff83-88d8-4f73-b6a9-bdf8712d000d // for propget
بالإضافة إلى ذلك، يمكنك استخدام آخر السمة المخصصة لوضع علامات لأسلوب كـ propput عند استيراد. The بناء الجملة of this مخصص سمة هو كـ follows:
GUID = 29533527-3683-4364-abc0-db1add822fa2 // for propput
لاحظ أنه يمكن تطبيق هذه السمة مخصص فقط تشغيل الأساليب. في يطبق القواعد followفيg بالإضافة إلى ذلك،:
يمكنك يطبق سمة واحدة فقط في كل مرة؛ إذا قمت بتطبيق عدة السمات، الجميع ما عدا الأولى يتم تجاهلها.
ل propget ، يتجاهل السمة المخصصة الجميع التواقيع أسلوب بدون الالقيمة المرجعة.
ل propput ، يتجاهل السمة المخصصة الجميع التواقيع أسلوب بدون معلمات إدخال (يمكن وضع علامة معلمات مع [في] أو [إلغاء] ولكن لا with[خارج,retval])، و يتجاهل الجميع التواقيع الموجودة بها القيمة إرجاع.
propget و propput ، يتجاهل السمة المخصصة GetEnumerator أسلوب في حالة استخدامها مع المعرف(-4) أو dispid(-4) مخصصة.
عند استيراد نوع المكتبة تستخدم Tlbimp.exe، دوماً باستخدام تبديل/transform:dispret بعد تطبيق السمة مخصصة لواجهات الإرسال فقط (dispinterfaces).
المثال
يظهر المثال التالي، مكتوب بلغة "تعريف واجهة" (IDL)، استخدم السمة propget:
[custom(2941ff83-88d8-4f73-b6a9-bdf8712d000d, ""), id(6)]
HRESULT cget(int i, [out, retval] short *pVal);
يوضح المثال التالي استخدم السمة propput:
[custom(29533527-3683-4364-abc0-db1add822fa2, ""), id(7)]
HRESULT cset([in] int i);
راجع أيضًا:
المرجع
Tlbimp.exe (مستورد مكتبة الأنواع)
المبادئ
تطبيق cusإلىm سمة إلى تنفيذ IEnumerable
تطبيق cusإلىm سمة إلى الكتابة فوق معرّف الإرسال COM الافتراضية (DISPID)