2009-07-01 8 views
29

में संदेश सही ढंग से स्थापित नहीं हो सकता है" मेरे पास एक इंस्टॉलर है जो एनटी 5.x, Vista, और विंडोज 7 के तहत पूरी तरह से काम करता है। इसमें एनटी 6.x पर यूएसी के लिए उचित मैनिफेस्ट है।"यह प्रोग्राम शायद विंडोज़ 7 आरसी

लेकिन विंडोज 7 आरसी के साथ शुरू होने पर, हर बार सेटअप प्रोग्राम बंद हो जाता है, विंडोज़ एक गलती उत्पन्न करता है "यह प्रोग्राम सही ढंग से स्थापित नहीं हो सकता है" संदेश, भले ही प्रोग्राम किसी भी समस्या के साथ सही ढंग से स्थापित नहीं हुआ हो। मुझे Vista या Windows 7 बीटा में इन नकली संदेशों को कभी नहीं मिला।

मैंने माइक्रोसॉफ्ट को एक बग रिपोर्ट भेजी, लेकिन वापस नहीं सुना है। मैंने सोचा कि यह विंडोज 7 आरसी में सिर्फ एक गड़बड़ हो सकता है, लेकिन हाल ही में आरटीएम-एस्क्रो बिल्डों में से एक के ताजा इंस्टॉल पर समस्या अभी भी लीक हुई है। माइक्रोसॉफ्ट के पास इसके बारे में कोई भी दस्तावेज़ीकरण नहीं है - यह भी संकेत नहीं कि संभवतः इसे ट्रिगर कर रहा है।

इससे भी अधिक निराशा होती है कि मैं इस "इस कार्यक्रम के ठीक से स्थापित नहीं हो सकता है" संदेश भले ही मैं पर स्थापित रद्द मिल बहुत पहले कर रहे हैं में आप सुनिश्चित करें-यू-करना-चाहते-आगे बढ़ना किसी भी से पहले स्क्रीन स्थापना कोड (एक temp dir, फ़ाइलों को निकालने, प्रतिलिपि, रजिस्ट्री, इत्यादि बनाना) कभी भी चलाया जाता है।

क्या किसी ने इसे बाहर निकाला है?

+0

क्या यह नीचे सर्वरफॉल्ट पर है? –

+11

कानूनी प्रोग्रामर का प्रश्न आईएमओ। अगर मैं एक इंस्टॉलर बनाना चाहता था, तो मैं इसे विंडोज 7 के उचित स्थापना मानदंडों को पारित करना चाहता हूं। – AlbertoPL

+2

क्षमा करें, मुझे स्पष्ट करना चाहिए था: जब मैंने कहा, "मेरे पास एक इंस्टॉलर है", मेरा मतलब था "मैंने सी का उपयोग कर इंस्टॉलर बनाया है", यही कारण है कि यह स्टैक ओवरफ़्लो में है और सर्वर फॉल्ट नहीं है। –

उत्तर

1

क्या आपने अपने इंस्टॉलर पर Application Compatibility Toolkit फेंक दिया है?

मुझे इससे पहले कभी निपटने का कोई कारण नहीं था, लेकिन ऐसा लगता है कि इसका क्या इरादा है।

+0

हां, मैंने कोशिश की थी। जेनरेट किए गए लॉग में प्रत्येक प्रविष्टि के माध्यम से निकल गया और जानकारी के किसी उपयोगी बिट्स को नहीं मिला। –

29

ठीक है, मेरे अपने प्रश्न का उत्तर देने के लिए, मुझे इस समस्या को हल करने का एक तरीका मिला है। मैंने देखा कि WinRAR चेंजलॉग ने इंगित किया कि WinRAR का स्वयं निकालने वाला भी एक ही समस्या से पीड़ित है, और यह हल हो गया था। इसलिए मैंने WinRAR का नवीनतम संस्करण डाउनलोड किया और इसे पहले संस्करण के साथ, किसी भी नए एपीआई कॉल की तलाश में एक डिस्सेबलर में फेंक दिया। लंबी कहानी छोटी, यह पता चला कि जो कुछ भी उसने किया वह मैनिफेस्ट में निम्नलिखित जोड़ता था:

<compatibility xmlns="urn:schemas-microsoft-com:compatibility.v1"> 
    <application> 
    <!--The ID below indicates application support for Windows Vista --> 
     <supportedOS Id="{e2011457-1546-43c5-a5fe-008deee3d3f0}"/> 
    <!--The ID below indicates application support for Windows 7 --> 
     <supportedOS Id="{35138b9a-5d96-4fbd-8e2d-a2440225f93a}"/> 
    </application> 
</compatibility> 

तार कुछ प्रलेखन कर दिया से कुछ Googling: जाहिरा तौर पर, यह कुछ नया है कि विंडोज 7 के लिए और कहा कि प्रलेखन जोड़ा गया है के लिए यह मई 20. यह पर बनाया गया था मदद नहीं की कि माइक्रोसॉफ्ट नहीं करता 'है अपने किसी भी Win7 प्रलेखन पृष्ठों से इसे लिंक नहीं करते हैं, यह बहुत कम सुविधा है। विलाप

संपादित करें: यह प्रलेखित है, खराब, MSDN here पर।

+1

यह वास्तव में अंतर्निहित समस्या को हल नहीं करता है। आप बस विंडोज़ को यह रिपोर्ट नहीं कर रहे हैं कि अब इसकी रिपोर्ट न करें। http://msdn.microsoft.com/en-us/library/dd371711(VS.85).aspx; विंडोज 7: संगतता अनुभाग वाले अनुप्रयोगों को पीसीए शमन नहीं मिलेगा। माना जाता है कि यह कुछ मामलों में जाने का मार्ग हो सकता है। –

+0

अच्छा, यह पूरी तरह से स्पष्ट नहीं है कि विंडोज़ सही तरीके से इसकी रिपोर्ट कर रहा है। इंस्टॉलर पीसीए अक्षम के साथ डिज़ाइन किए गए काम करता है, और जैसा कि मैंने अपनी दूसरी टिप्पणी में उल्लेख किया है, मैंने बहुत पहले ऐप सत्यापनकर्ता लॉग के माध्यम से waded किया था और यह भी सुनिश्चित करने के लिए विभिन्न एपीआई कॉल देखे थे कि इतनी नई Win7 चेतावनी नहीं थी मैं चूक गया था। मैंने इंस्टॉलर को इतना नीचे तोड़ दिया था कि यह कुछ भी नहीं कर रहा था, और विंडोज़ ने अभी भी शिकायत की थी। तो मुझे पूरा यकीन है कि यह कार्रवाई का सही तरीका है। –

3

मैं एक नया क्यूटी आधारित ऐप चलाते समय एक ही त्रुटि संदेश में भाग गया। वही लक्षण - .exe बंद होने के बाद यह 'सहायक' संदेश प्राप्त होगा, इससे कोई फर्क नहीं पड़ता कि प्रोग्राम ने क्या किया।

अब मेरे पास विभिन्न क्यूटी ऐप प्रोजेक्ट हैं, सभी ने बिल्कुल वही बनाया है। और कोई भी ऐसा नहीं करता है।

मुझे अंत में पता चला कि यह त्रुटि पूरी तरह से इस तथ्य के कारण हुई थी कि मैंने इस विशेष परियोजना 'इंस्टॉलर' का नाम दिया था। मैं एक बाइनरी 'installer.exe' के साथ समाप्त हो गया था और इसमें कोई संदेह नहीं होगा कि प्रोजेक्ट का नाम कहीं और बनाया गया है (qmake जेनरेट की गई प्रोजेक्ट फ़ाइल में डेल किए बिना, बिल्कुल सही नहीं है)।

ब्याज का मुद्दा यह है कि आप केवल 'इंस्टॉलर' नामक एक परियोजना के द्वारा इस समस्या में भाग सकते हैं और कुछ भी नहीं।

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