पर डायरेक्टएक्स एप्लिकेशन मैं एक डब्ल्यूपीएफ एप्लीकेशन विकसित कर रहा हूं जहां 3 डी भाग डायरेक्टएक्स 9 द्वारा संभाला जाता है (बहुत से 3 डी जो WPF का उपयोग करके पर्याप्त तेज़ी से नहीं चलते थे)।64 बिट विंडोज़
समस्या यह है कि एप्लिकेशन "किसी भी CPU" के साथ कॉन्फ़िगरेशन के रूप में जारी किया जाता है और जब कोई उपयोगकर्ता इसे 64 बिट विंडो पर चलाता है, तो direcX भाग क्रैश (System.BadImageFormatException)। स्पष्ट रूप से डायरेक्टएक्स भाग के लिए शामिल डीएलएस 64 बिट विंडोज़ पर प्रयोग योग्य नहीं है।
यह हमारे अन्य अनुप्रयोगों में उपयोग किए जाने वाले कुछ अन्य 3: rd भाग dlls के साथ हुआ है, लेकिन हमने 64 बिट विंडोज मशीन पर चल रहे हैं तो x64 के लिए बनाए गए लोगों को रनटाइम में डीएलएस को बदलकर हल किया है। क्या आप में से कोई भी जानता है कि मैं x64 के लिए डायरेक्टएक्स 9 डीएलएस कहां पा सकता हूं? अगर वे बिल्कुल मौजूद हैं।
उनके जो मेरे द्वारा की जरूरत है:
- Microsoft.DirectX.Direct3D
- Microsoft.DirectX.Direct3DX
- Microsoft.DirectX
अगर वे मौजूद नहीं है, समस्या यह कर सकते हैं किसी अन्य तरीके से हल किया जाना चाहिए? क्योंकि आवेदन ClickOnce के माध्यम से जारी किया गया है और विन्यास का एक परिवर्तन ClickOnce (विन्यास ClickOnce कुंजी में शामिल है) काम करना बंद कर
मुझे जोड़ने कि मैं एक Winforms उपयोग कर रहा हूँ चलो बनाने मैं 86 के लिए विन्यास को नहीं बदल सकते डब्ल्यूपीएफ एप्लिकेशन द्वारा होस्ट किया गया हिस्सा और यह कि Winforms भाग डायरेक्टएक्स डीएलएस का उपयोग कर रहा है, जिसके बारे में मैं पूछ रहा हूं। WPF: s 3 डी का उपयोग करने के बजाय WPF में बहुत से 3 डी मेष पेश करने का यह एक बेहतर और तेज़ तरीका था। दुर्भाग्य से यह समस्या इसके बजाय हुई।
के रूप में एक अलग रूप में: XNA/खिड़कियों बलों खुद भी 64 पर 32-बिट मोड का उपयोग करने - तो मुझे आश्चर्य है कि अगर यह संभव नहीं है ... मैं वास्तव में पता नहीं है, हालांकि। –
बस एक एफवाईआई, डब्ल्यूपीएफ 3 डी सामान प्रत्यक्ष एक्स के लिए एक रैपर है। वे बहुत ज्यादा हैं। कुछ सामान दें या लें। – Tony