هل هناك طريقة لمعرفة ما إذا كان اثنين من واجهة COM المراجع نقطة في نفس سبيل المثال ؟

StackOverflow https://stackoverflow.com/questions/323289

  •  11-07-2019
  •  | 
  •  

سؤال

وذلك من خلال واجهة المراجع التي تم الحصول عليها من مصادر مختلفة.هل هناك طريقة برمجية معرفة ما إذا كان انهم تنفيذها من قبل نفس سبيل المثال ؟

بسيطة المساواة التحقق من واجهة المراجع تفشل دائما.


تحرير: أجزاء كبيرة من السؤال الأصلي ، والتي تحولت إلى أن تكون مستقلة المشكلة الآن تم نقله إلى سؤال جديد.

هل كانت مفيدة؟

المحلول

يمكنك الاستعلام عن واجهة IUnknown ومقارنة هذه المؤشرات.جميع مؤشرات واجهة ليست مضمونة العودة إلى نفس القيمة في كل مرة.

من قواعد طراز كائن المكون:

هوية الكائن. فمن المطلوب أن أي استدعاء QueryInterface على أي واجهة معين مثيل كائن معين واجهة IUnknown يجب العودة دائما نفس البدنية مؤشر القيمة.وهذا يتيح استدعاء QueryInterface(IID_IUnknown, ...) على أي اثنين من واجهات ومقارنة النتائج لتحديد ما إذا كانت تشير إلى نفس مثيل كائن (نفس كائن COM الهوية).

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top