Peverify.exe (أداة PEVerify)

تقوم الأداة PEVerify بمساعدة المطورون الذين قاموا بإنشاء Microsoft intermediate language (MSIL) (مثل الكتاب المترجم و مطورين مشغل البرنامج النصي و هكذا) لتحديد ما إذا إلتقت التعليمات البرمجية MSIL و بيانات التعريف المقترنة مع متطلبات تأمين النوع, و يقوم بعض المترجمون بإنشاء تعليمات برمجية لآمان النوع القابل للتحقق منه فقط إذا تجنبت استخدام ثوابت لغة معينة, و في حالة استخدام المطور محول برمجي من هذا النوع فإنه قد يحتاج للتحقق من عدم وجود اختراق لتأمين النوع للتعليمات البرمجية الخاصة به, ففي هذه الحالة، يمكنه تشغيل الأداة PEVerify على الملفات للتحقق من MSIL و بيانات التعريف.

يتم تلقائياً تثبيت الأداة PEVerify مع ‏‫Visual Studio, و لتشغيل الأداة استخدم موجه أوامر Visual Studio.. في موجه الأوامر، اكتب ما يلي:

peverify filename [options]

المعلمات

الوسيطة

الوصف

filename

الملف المحمول القابل للتنفيذ (PE) للتحقق في MSIL و بيانات التعريف.

الخيار

الوصف

/break=maxErrorCount

إحباط التحقق من بعد أخطاء maxErrorCount.

هذه المعلمة غير معتمدة في الإصدار 2.0 أو الإصدارات الأحدث من برنامج .NET Framework.

/clock

يقيس و يعد تقارير بالميلي ثانية حول أوقات التحقق التالية:

دورة Val. MD

دورة التحقق من صحة بيانات التعريف

MD Val. خالص

التحقق من صحة بيانات التعريف الخالصة

دورة Ver. IL

دورة تحقق من صحة Microsoft intermediate language (MSIL)

إصدار IL الخالص

تحقق من صحة MSIL الخالص

الأوقات دورة MD Val. و دورة IL Ver. تتضمن الوقت المطلوب لتنفيذ الإجراءات الضرورية لبدء التشغيل و الإيقاف, و الأوقات MD Val. خالص و إصدار IL خالص تعكس الوقت المطلوب لتنفيذ التحقق من الصحة أو التحقق فقط.

/help

يقوم بعرض بناء جملة الأمر والخيارات للأداة.

/hresult

يقوم بعرض رموز الخطأ بالتنسيق الست عشري.

/ignore=hex.code [, hex.code]

يتجاهل رموز الخطأ المحددة.

/ignore=@responseFile

يتجاهل رموز الخطأ المسرودة في ملف الاستجابة المحدد.

/il

ينفذ التحقق من تأمين النوع MSIL للتحقق من الأساليب المطبقة في التجميع المحدد بواسطة اسم الملف, و تقوم الاداة بإعادة الوصف المفصل حول كل مشكلة تم العثور عليها ما لم تحدد الخيار /quiet.

/md

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

/nologo

يمنع عرض معلومات الإصدار وحقوق النشر حول المنتجات.

/nosymbols

في .NET Framework version 2.0, يمنع أرقام الأسطر للتوافق في الخلفية.

/quiet

تحديد الوضع الهادئ; يمنع إخراج التقارير الخاصة بمشكلة التحقق, و لا يزال Peverify.exe يعد تقارير ما إذا كان الملف من النوع الآمن و لكن لا يصدر معلومات حول المشكلات التي تمنع التحقق من تأمين النوع.

/transparent

التحقق من الأساليب الشفافة فقط.

/unique

يتجاهل تكرار رموز الخطأ.

/verbose

يعرض معلومات إضافية في رسائل التحقق من MSIL في .NET Framework لإصدار 2.0.

/?

يقوم بعرض بناء جملة الأمر والخيارات للأداة.

ملاحظات

يعتمد وقت تشغيل اللغة العامة على تنفيذ أمان النوع للتعليمات الربمجية للتطبيق للمساعدة في فرض آليات الأمان و العزل, فعادةً، لا يمكن تشغيل التعليمات البرمجية التي ليست أمان النوع القابل للتحقق على الرغم من أنه يمكنك تعيين نهج الأمان للسماح بتنفيذ التعليمات البرمجية موثوق بها و لكن غير قابلة للتحقق منها.

إذا لم يتم تحديد الخيارات /md أو /il فإن Peverify.exe ينفذ كلا النوعين من الاختبارات, ينفذ Peverify.exe التحقق من /md أولاً, و إذا لم يوجد أخطاء فإن إجراء اختبارات على /il قد تم, و إذا قمت بتحديد كلا /md و /il فإن إجراء اختبارات على /il قد تم على الرغم من وجود أخطاء في بيانات التعريف, و بالتالي، إذا لم يكن هناك أخطاء في بيانات التعريف فإن peverifyاسم الملف يكافئ peverify filename /md /il.

يقوم Peverify.exe بتنفيذ عمليات التحقق الكاملة لـ MSIL استناداً إلى تحليل تدفق البيانات بالإضافة إلى قائمة بمئات القواعد على بيانات التعريف الصالحة, و لمزيد من المعلومات حول تنفيذ عمليات التحقق لـ Peverify.exe, راجع "مواصفات التحقق من صحة بيانات تعريف" و "تعليمة MSIL لتعيين المواصفات" في أدوات مجلد مطورين الدليل في عدة تطوير برامج Windows (SDK).

علماً بأن برنامج .NET Framework لإصدار 2.0 أو الإصدار الأحدث يدعم إمكانية التحقق من byref للإرجاع المحدد باستخدام إرشادات MSIL التالية: dup و ldsflda و ldflda و ldelema و call و unbox.

أمثلة

يقوم الأمر التالي بتنفيذ عمليات التحقق من بيانات التعريف و تأمين النوع لـ MSIL للأساليب المطبقة في التجميع myAssembly.exe,

peverify myAssembly.exe /md /il

عند الإتمام بنجاح للطلب الوارد أعلاه, يقوم Peverify.exe بعرض الرسالة التالية.

All classes and methods in myAssembly.exe Verified

يقوم الأمر التالي بتنفيذ عمليات التحقق من بيانات التعريف و تأمين النوع لـ MSIL للأساليب المطبقة في التجميع myAssembly.exe, و تقوم الأداة بعرض الوقت المطلوب لتنفيذ هذه الاختبارات.

peverify myAssembly.exe /md /il /clock

عند الإتمام بنجاح للطلب الوارد أعلاه, يقوم Peverify.exe بعرض الرسالة التالية.

All classes and methods in myAssembly.exe Verified
Timing: Total run     320 msec
        MD Val.cycle  40 msec
        MD Val.pure   10 msec
        IL Ver.cycle  270 msec
        IL Ver.pure   230 msec

يقوم الأمر التالي بتنفيذ عمليات التحقق من بيانات التعريف و تأمين النوع لـ MSIL للأساليب المطبقة في التجميع myAssembly.exe, و توقف Peverify.exe عندما يصل عدد الأخطاء كحد أقصى من 100, و تقوم الأداة أيضاً بتجاهل رموز الأخطاء المحددة.

peverify myAssembly.exe /break=100 /ignore=0x12345678,0xABCD1234

الأمر التالي يعطي نفس النتيجة مثل المثال السابق أعلاه و لكن يعيّن رموز الخطأ لتجاهل ملف الاستجابة ignoreErrors.rsp.

peverify myAssembly.exe /break=100 /ignore@ignoreErrors.rsp

يمكن أن يحتوي ملف الاستجابة على قائمة مفصولة بفواصل لرموز الخطأ.

0x12345678, 0xABCD1234

بدلاً من ذلك، يمكن أن يتم تنسيق ملف الاستجابة مع رمز خطأ واحد لكل خط.

0x12345678
0xABCD1234

راجع أيضًا:

المرجع

موجه أوامر Visual Studio.

المبادئ

كتابة Verifiably رمز نوع آمن

نوع الأمان وأمان

موارد أخرى

أدوات .NET Framework