سؤال

نحن نبحث في تحريك طلبنا من VS2008 إلى VS2010.

نولد بعض كائنات COM مع "البرمجة المنسوبة" ويتم إنشاء IDL تلقائيا.

توجيهات الاستيراد لكل من الملفات مختلفة وفشل المجموعة على VS2010.

على VS2008، فإنه يولد شيئا مثل:

giveacodicetagpre.

على مقابل 2010

giveacodicetagpre.

عندما يتم تجميع IDL على VS2010، يولد الأخطاء التالية

giveacodicetagpre.

إزالة توجيه الاستيراد "Wincrypt.idl" يدويا، يزيل خطأ التجميع، ولكن هذا ليس حلا نظرا لأن IDL تم إنشاؤه تلقائيا.

أنا لست متأكدا من أن اثنين من IDL مختلفا وما هو المسؤول عن إضافة توجيهات الاستيراد؛أو حتى كيفية إصلاح خطأ تجميع MIDL.

أي أفكار؟

شكرا مقدما.

max.

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

المحلول

مفقود

giveacodicetagpre.

يمكنك إصلاحه باستخدام السمة [ImpractIDL] في التعليمات البرمجية الخاصة بك.

تعزى البرمجة قليلا من الخطأ، فقد تم إهمالها أساسا عند إزالة كخيار لمعالج مشروع ATL في VS2008.للحصول على صيانة طويلة الأجل لقاعدة التعليمات البرمجية في إزالة ذلك.يمكنك استخدام الإنازل تلقائيا .DL كوسيلة للحصول على ذلك.

نصائح أخرى

Perhaps I was using the [importidl] attribute wrong, but I couldn't get Hans' answer to fix this problem. But the fix here worked. Just add this to the top of your stdafx.h file:

[idl_quote("import \"ocidl.idl\";")];
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top