مشاركة عبر


أسلوب IMetaDataDispenser::OpenScope

Opens an موجود, تشغيل-قرص ملف و خرائط its بيانات التعريف في ذاكرة.

HRESULT OpenScope (
    [in]  LPCWSTR     szScope, 
    [in]  DWORD       dwOpenFlags, 
    [in]  REFIID      riid, 
    [out] IUnknown    **ppIUnk
);

المعلمات

  • szScope
    [في] The اسم of the ملف إلى be opened. The ملف must contain وقت تشغيل اللغة العامة (CLR) بيانات التعريف.

  • dwOpenFlags
    [في] القيمة CorOpenFlags بتعداد إلى تحديد الوضع (قراءة وكتابة وهكذا) لفتح.

  • riid
    [في] معرف الواجهة بيانات التعريف المطلوبة إلى يتم إرجاع؛ سيقوم الطالب باستخدام الواجهة إلى استيراد (القراءة) أو إرسال بيانات التعريف (write).

    الالقيمة riidيجب أن يحدد واحد في "استيراد"أو"الارسال" واجهات. قيم الصالحة هي IID_IMetaDataEmit IID_IMetaDataImport، IID_IMetaDataAssemblyEmit، IID_IMetaDataAssemblyImport، IID_IMetaDataEmit2 أو IID_IMetaDataImport2.

  • ppIUnk
    [خارج] المؤشر إلى الواجهة التي يتم إرجاعها.

ملاحظات

يمكن يمكن الاستعلام عن النسخة في ذاكرة من ملفات التعريف استخدام وظائف من إحدى الواجهات "استيراد"، أو قم بإضافتها باستخدام وظائف من ذلك الواجهات "الارسال".

If the الهدف ملف does لا يحتوي على CLR بيانات التعريف, the OpenScope أسلوب will فشل.

في the .NET الإصدار إطار العمل 1.0 و الإصدار 1.1, if a نطاق هو opened مع dwOpenFlags التعيين إلى ofRead, it هو eligible for مشاركة. That هو, if subsequent calls إلى OpenScope pass في the اسم of a ملف that was previously opened, the موجود نطاق هو reused و a جديد التعيين of بيانات structures ليس تاريخ الإنشاء. However, problems can arise due إلى this مشاركة.

في the .NET الإصدار إطار العمل 2.0, scopes opened مع dwOpenFlags التعيين إلى ofRead are لا longer shared. استخدم the ofReadOnly القيمة إلى allow the نطاق إلى be shared. When a نطاق هو shared, queries that استخدم "read/write" بيانات التعريف الواجهات will فشل.

المتطلبات

الأنظمة الأساسية: See متطلبات النظام إطار عمل .NET.

**Header:**Cor.h

**المكتبة:**يستخدم كـ مورد في MsCorEE.dll

.NET Framework Versions: 4, 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0, 1.1, 1.0

راجع أيضًا:

المرجع

واجهة IMetaDataDispenser

واجهة IMetaDataDispenserEx

واجهة IMetaDataAssemblyEmit

واجهة IMetaDataAssemblyImport

واجهة IMetaDataEmit

واجهة IMetaDataEmit2

واجهة IMetaDataImport

واجهة IMetaDataImport2