استثناء غير معالج DirectX11.1 تقديم رسومات ثنائية الأبعاد

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

سؤال

أنا أستخدم DirectX11.1 في Visual Studio 2013، قم بتطوير تطبيق Windows 8 Store.

لقد كنت أحاول بضعة أيام للحصول على رأسي حول إنشاء واجهة مستخدم ثنائية الأبعاد باستخدام DirectX، وكما اعتقدت أنني قد أكون قد حصلت عليه، فأنا قادما استثناء غير معالج لا أستطيع أن أبدو يهز.

"استثناء غير معالج في 0x002E2901 في First.exe: 0xc0000005: انتهاك الوصول لموقع القراءة 0x00000000."

تحديث: يبدو أنه بعد "d2dfactory-> createvice (dxgidevice.get ()، & dev2d)؛ DEV2D يخرج باسم NULL.

التحديث: استخدام HRESULT طريقة إنشاء الجهاز يعطي الخطأ "E_INVALIDARG".

(لقد كنت أتابع http:// msdn. microsoft.com/en-us/library/windows/apps/hh780340.aspx )

أدناه هو التعليمات البرمجية الخاصة بي من ملف الرأس و .cpp. لم أدرج أي شيء آخر في إنشاء ID2D1DEVICONECONECONEX لأن هذا هو المكان الذي ينشأ فيه الخطأ (فقط عندما أدرج ذلك فقط يحدث الاستثناء.

.h

giveacodicetagpre.

.cpp ملف

giveacodicetagpre.

قد تكون هناك تقدير كبير أي مساعدة، وفي حالة وجود أي سبب لعرض التعليمات البرمجية التالية:

giveacodicetagpre.

تحديث:

الإخراج بعد الخطأ هو: (هناك إخراج خطأ مماثل على هذا الكامنة حول contackoverflow، على الرغم من أنه يبدو غير مرتبط للغاية.

giveacodicetagpre.

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

المحلول

تبين أنني لم أنشأ جهاز D3D11 الخاص بي لتكون متوافقا مع Direct2D.الرمز أدناه ثابته.بفضل تريليان لتصحيح الأخطاء، كان مفيدا بشكل لا يصدق.

giveacodicetagpre.

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