6

मैं दृश्य स्टूडियो 2012 पीसीएल है कि में एक सी # परियोजना है, ये प्लेटफ़ॉर्म को लक्ष्य (मैं नाम हटा दिए गए):एक पीसीएल परियोजना से डीएलएल एक x86 असेंबली क्यों है?

enter image description here

जब मैं एक करने के लिए dll जोड़ने के लिए, एक सफल निर्माण से, कोशिश VS2013 में सिल्वरलाइट 5 परियोजना, मैं इस चेतावनी हो रही है और यह वास्तव में जोड़े जाने के लिए प्रतीत नहीं होता:

चेतावनी 1 परियोजना निर्माण किया जा रहा "MSIL" के प्रोसेसर आर्किटेक्चर और प्रोसेसर आर्किटेक्चर के बीच एक बेमेल थी संदर्भ "[नाम]", "x86"। यह विसंगति रनटाइम विफलताओं का कारण बन सकती है। कृपया कॉन्फ़िगरेशन प्रबंधक के माध्यम से अपने प्रोजेक्ट के लक्षित प्रोसेसर आर्किटेक्चर को बदलने पर विचार करें ताकि आपके प्रोजेक्ट और संदर्भों के बीच प्रोसेसर आर्किटेक्चर को संरेखित किया जा सके, या प्रोसेसर आर्किटेक्चर के संदर्भों पर निर्भरता लें जो आपके प्रोजेक्ट के लक्षित प्रोसेसर आर्किटेक्चर से मेल खाता हो।

enter image description here

क्यों एक PCL 86 के रूप में भी दिखाया जा रहा है?

+4

आपकी चेतावनी छोटी है, कृपया त्रुटि संदेश को अपने प्रश्न निकाय में कॉपी/पेस्ट करें –

+2

eddie_cat, मैंने इसे जोड़ा, हालांकि आप भी इसे जोड़ सकते हैं छवि पर राइट क्लिक करें और छवि देखें (कम से कम फ़ायरफ़ॉक्स में)। – Jake

+1

मुझे नहीं लगता कि आपके कॉन्फ़िगरेशन और प्लेटफ़ॉर्म के लिए एन/ए होना सामान्य बात है। AnyCPU सेटिंग के साथ एक नया कॉन्फ़िगरेशन बनाने का प्रयास करें। –

उत्तर

0

जब आपके पास एकाधिक लक्ष्यों के लिए पीसीएल प्रोजेक्ट है और आप आउटपुट को संदर्भित करना चाहते हैं। अन्य परियोजनाओं में डीएलएल, सुनिश्चित करें कि आप सही संकलन के साथ सही .dll चुनते हैं।

उदाहरण के लिए:

  • आप एक व्यापार परियोजना WP 8 और SL के लिए पीसीएल है कि 5.
  • आप 2 परियोजनाओं है कि ऊपर व्यापार परियोजना
    • SL proj से dll का संदर्भ है है
    • WP 8 proj

WindowsPhone proj में जब आप संदर्भ जोड़ने के लिए जाते हैं तो आपको एआरएम के लिए संकलित किया जाना चाहिए [ध्यान दें कि यदि आप एमुलेटर पर चलाना चाहते हैं तो आपको x86 संस्करण चुनना चाहिए, क्योंकि एमुलेटर एआरएम नहीं है]। यदि आप x86 संस्करण जोड़ते हैं और कॉन्फ़िगरेशन मैनेजर में आप इसे एआरएम पर सेट करते हैं, तो विजुअल स्टूडियो आपको उसी त्रुटि के साथ चेतावनी देगा, क्योंकि आप एआरएम कोड चलाएंगे और एक x86 कोड संदर्भित होगा।

जांचें कि क्या .dll जो आप कॉन्फ़िगरेशन प्रबंधक के साथ मेल जोड़ते हैं। इसे "एकाधिक प्लेटफॉर्म" बनाम "किसी भी सीपीयू" के बजाय इच्छित एकाधिक आर्किटेक्चर के लिए बदलें,

संबंधित मुद्दे