2 Winform परियोजनाओं एक है कहो, बीसी # दोनों X86 और किसी भी सीपीयू
प्रोजेक्ट ए (.NET 2.0 को लक्षित) का उपयोग कर परियोजनाओं x86 पर चलने के लिए किया गया है (यह एक बाहरी पुस्तकालय है) और विरासत कारणों के लिए प्रोजेक्ट बी (लक्ष्य .NET 4.0) को किसी भी CPU पर चलाना होगा। अब मैं परियोजना बी से एक के तरीकों कॉल करने की आवश्यकता है, लेकिन यह एक त्रुटि फेंकता है:
"An unhandled exception of type 'System.BadImageFormatException' occurred in System.Windows.Forms.dll"
Additional information: Could not load file or assembly 'CSharpDemo, Version=1.0.5414.18636, Culture=neutral, PublicKeyToken=null' or one of its dependencies. An attempt was made to load a program with an incorrect format."
हालांकि, मैंने पाया है कि अगर मैं .NET 4.5 पर परियोजना बी को लक्षित तो इस समस्या नहीं होती है। लेकिन मैं अभी भी प्रोजेक्ट बी को 4.0 लक्ष्यीकरण करना चाहता हूं, इसे कैसे प्राप्त किया जाए?
कोई भीCPU 32 बिट पसंद करता है? – Steve
ज्यादातर इसे 32 बिट मशीन पर चलाना चाहिए, लेकिन मैं प्रोजेक्ट बी की सेटिंग को x86 में नहीं बदल सकता क्योंकि यह अन्य परियोजनाओं को प्रभावित कर सकता है – wuha
यह तब एक मृत अंत लगता है। 64 बिट ओएस पर AnyCPU का मतलब है 64 बिट कोड और 64 बिट कोड 32 बिट पुस्तकालयों को कॉल नहीं कर सकता है। http://blogs.microsoft.co.il/sasha/2012/04/04/what-anycpu-really-means-as-of-net-45-and-visual-studio-11/ – Steve