2012-06-15 14 views
5

का उपयोग करने में BadImageFormatException त्रुटि मैंने .NET 4.0 का उपयोग करके अपनी विंडोज सेवा बनाई और संकलित की है इसलिए मैं .NET 4.0 फ़ोल्डर पर जाता हूं और कुछ ऐसा कहता हूं: मैंने पथ को कम करने के लिए बिन फ़ोल्डर को सी ड्राइव में कॉपी किया:InstallUtil टूल

InstallUtil.exe "C: \ बिन \ डीबग \ MyTestService.exe"

और इस त्रुटि मैं मिलता है:

Excepti स्थापना शुरू करते समय हुआ: सिस्टम। बैड इमेजफॉर्मैट अपवाद: फ़ाइल या असेंबली 'फ़ाइल लोड नहीं हो सका: /// सी: \ bin डीबग \ MyTestService.exe' या इसकी निर्भरताओं में से एक। गलत प्रारूप वाले प्रोग्राम को लोड करने का प्रयास किया गया ..

इसलिए मुझे नहीं पता कि क्या करना है।

+0

हम्म - आपका त्रुटि संदेश कहता है .... सी: \ बिन डीबग ... यानी जगह के बजाय \। –

उत्तर

16

यह त्रुटि होती है जब आप installutil के गलत संस्करण का उपयोग करते हैं। उदाहरण के लिए, आप .NET 2.0 के लिए installutil.exe का उपयोग कर रहे हैं लेकिन आपका लक्ष्य exe 4.0 के साथ बनाया गया है या आप 64 बिट dll/exe पर installutil के 32 बिट संस्करण का उपयोग कर रहे हैं।

+5

+1 क्योंकि यह सही है, लेकिन सबसे महत्वपूर्ण बात यह है कि, मैं आपके जैव पर हँसे। –

+0

यह त्रुटि तब भी होती है जब आप नेटवर्क स्थान से किसी सेवा को लोड करने का प्रयास करते हैं, जिसमें .NET संस्करण 2.0 से अधिक CAS सक्षम है। – MatUtter

0

यह विजुअलस्टूडियो में "एएनसीपीयूयू" के साथ बनाया गया था, लेकिन मैं इंस्टॉल उपयोग के एक्स 64 संस्करण का उपयोग कर रहा था, मैंने इसे स्पष्ट रूप से बदल दिया और इसे एक्स 64 मशीन के लिए बनाया और उस त्रुटि से छुटकारा पा लिया। हालांकि अब यह कुछ और त्रुटि कह रहा है लेकिन यह त्रुटि हल हो जाती है।

+0

आपने मेरा दिन बचाया! धन्यवाद! – Matheno

0

मैं सेट 32 बिट और 64 बिट सेटअप दोनों के लिए AnyCPU के रूप में सेट है। इसने काम कर दिया।

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