दृश्य स्टूडियो कमांड प्रॉम्प्ट से, इस कमांड चलाएँ:
Dumpbin.exe /headers c:\where\you\put\it\setup.exe
कहाँ "setup.exe" सेटअप EXE अपने संस्थापक निर्माता द्वारा बनाई गई है। मैं आपके द्वारा देखी जाने वाली जानकारी का एक उदाहरण पोस्ट करूंगा:
OPTIONAL HEADER VALUES
10B magiC# (PE32)
...
4.00 operating system version
0.00 image version
6.00 subsystem version // <=== here!!
0 Win32 version
...
उपप्रणाली संस्करण संख्या महत्वपूर्ण है। वीएस2012 विजुअल स्टूडियो का पहला संस्करण है जिसने Vista को संस्करण संख्या 6.00 पर सेट करना शुरू किया। पिछला संस्करण, साथ ही VS2012 जब आप .NET 4.0 या इससे पहले लक्षित करते हैं, तो यह संस्करण संख्या 4.00
यह अन्यथा आगे एक महत्वपूर्ण कदम है और XP के लिए चरणबद्ध समर्थन का हिस्सा है। विंडोज संस्करण 6.00 और ऊपर, विस्टा, विन 7 और विन 8 इस नंबर पर ध्यान देते हैं। वे मान लेंगे कि आपका प्रोग्राम बाद में विंडोज फीचर्स से अनजान है और कई एपकोम्पेट शिम्स चालू होने की जरूरत है। सबसे उल्लेखनीय एक एरो में एपकंपेट है, डेस्कटॉप थीम जो वसा सीमाओं वाली खिड़कियां प्रदर्शित करती है जो माउस के साथ क्लिक करना आसान है। विंडोज उन सीमाओं के बारे में झूठ बोलेंगे, आपको बताएंगे कि आपकी खिड़की वास्तव में उससे छोटी है। प्रोग्रामर को भ्रम का एक बड़ा स्रोत जो विंडोज़ को एक-दूसरे के साथ बनाने की कोशिश करते हैं।
प्रदर्शित 6.00 देखने का नतीजा यह है कि आपका सेटअप प्रोग्राम अब XP पर नहीं चल सकता है। यह संस्करण 5.02 है।
तो सुनिश्चित करें कि आप लक्ष्य .NET संस्करण 4.5 नहीं है, यह XP के लिए उपलब्ध नहीं है। इसके बजाए 4.0 का प्रयोग करें। यदि आपको अभी भी समस्या है तो विक्रेता के समर्थन से संपर्क करें और उनसे पूछें कि उपकरण को setup.exe फ़ाइल में उस नंबर को कैसे नियंत्रित किया जाए। संख्या बदलने के लिए/SUBSYSTEM विकल्प के साथ Editbin.exe को चलाने के लिए एक वर्कअराउंड है।
स्रोत
2013-05-09 10:51:54
शायद यह .NET 4.5 ढांचे की तलाश में है, जो आपके Win XP मशीन पर मौजूद नहीं है। –
@AlexBell संभवतः, या यह एक आर्किटेक्चर समस्या हो सकती है। क्या यह .exe x86 या x64 के रूप में संकलित था? – Adrian
यदि संभव हो, नेट फ्रेमवर्क 4.0 – Steve