2012-08-10 10 views
6

जब मैं डेल्फी XE2 में एक डेल्फी 7 परियोजना खोलने के लिए और परियोजना विकल्प खोलने मैं कोई त्रुटि मिलती है लापता। डेल्फी 7 प्रोजेक्ट में आरईएस फ़ाइल है जिसमें संग्रहीत संस्करण जानकारी के साथ मेनिन है। डेल्फी XE2 इसका उपयोग करने में सक्षम क्यों नहीं है। MAESICON & संस्करण जानकारी को पुन: प्राप्त करने के लिए फ़ाइल फ़ाइल।डेल्फी 7 डेल्फी XE2 .res फ़ाइल मुद्दे पर

[BRCC32 Error] MtxReq.vrc(2): file not found: MtxReq_Icon.ico 

MTXReq.vrc फ़ाइल (एक नई फ़ाइल) बनाया जाता है और MtxReq.res फ़ाइल हटा दी जाती है -

इसके अलावा, अगर मैं XE2 में आवेदन संकलित करने के लिए प्रयास करते समय मुझे त्रुटि मिलती है।

ऐसा क्यों हो रहा है? मैं .res फ़ाइल से अपने प्रोजेक्ट आइकन और संस्करण सेटिंग्स को मिटाना नहीं चाहता हूं।

क्या .res फ़ाइल का उपयोग करने के लिए XE2 को मजबूर करने और इसे हटाने के लिए कोई तरीका नहीं है?

किसी भी मदद की सराहना की जाएगी।


खेद है कि मैं एक टिप्पणी पोस्ट नहीं कर सकते हैं अभी तक (अधिक repotation अंक की जरूरत है) ...

वॉरेन - यहाँ अपने प्रश्न का प्रतिक्रिया (सिर्फ अपने .dproj फ़ाइल को हटाने नहीं चाहेंगे और केवल .dpr को रखते हुए, तेजी से चल रहे हैं?)

मैंने .dproj हटा दिया, .dproj.local XE2 में .dpr खोल दिया और यह .dproj फ़ाइल को फिर से बनाया। यह .res से आइकन वापस ले गया लेकिन मैंने प्रोजेक्ट संस्करण जानकारी खो दी। केवल फ़ाइल संस्करण और उत्पाद संस्करण जानकारी माइग्रेट हो गई है लेकिन अन्य सभी संस्करण जानकारी खो दी है। (यह डिफ़ॉल्ट मैनिफेस्ट फ़ाइल की वजह से है)। मैंने तब कोशिश की जो मैंने अपने समाधान के चरण 1 में समझाया। मैंने नोटपैड में .dproj फ़ाइल को खोलने के लिए टैग प्रविष्टियों को हटा दिया और .dproj फ़ाइल को फिर से खोल दिया और मेरी सभी संस्करण जानकारी अब पुनर्प्राप्त की गई। यहां समस्या $ (बीडीएस) \ bin \ default_app.manifest है। मैंने यह भी देखा कि संस्करण जानकारी को .dproj फ़ाइल में टैग के नीचे टैग में संग्रहीत किया जाता है और एक बार जब आप डिफ़ॉल्ट मैनिफेस्ट प्रविष्टियों को हटा देते हैं, तो IDE संस्करण कुंजी जानकारी को सही तरीके से पिकअप करता है।

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

उत्तर

12

अद्यतन 2015: .DPROJ पुनः बनाने का रेमी के विचार हाथ से ध्यान से फ़ाइलें, उत्कृष्ट सलाह, भले ही मेरा उत्तर स्वीकार कर लिया चिह्नित है और पहले विचार किया जाना चाहिए।

XE2 से पहले डेल्फी संस्करण संसाधन फ़ाइलों को संकलन प्रक्रिया में एक इनपुट और एक आउटपुट के रूप में उपयोग करते थे।उदाहरण के लिए, आपका डेल्फी 7 प्रोजेक्ट आइकन उस .res फ़ाइल में एम्बेड किया गया है, जिसे आप "डेल्फी xe2 का उपयोग करना चाहते हैं", हालांकि, यह डेल्फी 7 में समस्याग्रस्त है, और अब XE2 में असंभव हो गया है। इसके बजाय अब आप .res फ़ाइल को शुद्ध आउटपुट आर्टिफैक्ट के रूप में देखते हैं, जो निष्पादन योग्य फ़ाइलों के समान है। संस्करण नियंत्रण में जांचें .res फ़ाइलों को और परेशान न करें, और यह दिखाने का प्रयास न करें कि .res फ़ाइल वह जगह है जहां आप स्थायी रूप से अपने आइकन संग्रहीत करते हैं। यह संकलक द्वारा स्वचालित रूप से उत्पादित एक आउटपुट फ़ाइल है, क्योंकि यह हमेशा होना चाहिए था।

यदि आप एक आधुनिक डेवलपर हैं, तो पुराने तरीके से डेल्फी 7 ने आपको परेशान किया होगा (यह मुझे यकीन है कि मुझे परेशान किया गया है) क्योंकि आपके पास संस्करण नियंत्रण के लिए क्या करना है इसके बारे में दिलचस्प और असफल सवाल है: क्या आप .RES में चेक इन करते हैं फाइल, या आप नहीं? दोनों दृष्टिकोणों में कमी आई थी, और तथ्य यह है कि .RES फ़ाइलें अब XE2 में आउटपुट कलाकृतियों को सर्वश्रेष्ठ के लिए है। तो इसके साथ जीना सीखो।

अब XE2 न केवल एक पीसी के लिए बल्कि मैक के लिए आइकन का समर्थन करता है, इसे चीजों को अलग-अलग संभालना चाहिए, और उन्होंने इसे साफ़ कर लिया है। यह उस समस्या की उत्पत्ति है जिसे आप .ICO फ़ाइल के साथ देख रहे हैं। मैंने बिल्कुल वही त्रुटि देखी है, और मैंने इसे अनदेखा कर दिया है, और अन्यथा इसे परिवर्तित करने के बाद आइकन को आइकन में वापस जोड़ा है।

डेल्फी 7 प्रोजेक्ट (.dpr और .cfg) को डेल्फी XE2 में कनवर्ट करना डीडीपीजे फाइलों के विभिन्न स्तरों के बीच रूपांतरण के रूप में बड़ी समस्या नहीं है - प्रत्येक संस्करण डेल्फी 2005,2007,2009,2010 से शुरू होता है, और बाद में dproj प्रारूप में परिवर्तन लागू किया है। जब इन परियोजनाओं को बदलने के साथ समस्याएं होती हैं, तो मैं रेमी सुझाव के रूप में नहीं करता, क्योंकि यह समय बर्बाद है। मैं जो करता हूं वह डीपीआरओजे को हटा देता है और इसे केवल .dpr फ़ाइल से कनवर्ट करने देता है।
लेकिन स्क्रैच से शुरू करने के लिए रेमी की सलाह में कई फायदे हैं, जिसमें आप अपने प्रोजेक्ट लेआउट को सरल बना सकते हैं।

  1. त्रुटि पर ध्यान न दें:

    फिर भी, यहाँ आप क्या करना है।

  2. स्वयं को प्रोजेक्ट करने के लिए आइकन जोड़ें।
  3. साथ मिलकर जारी रखें, और .res फ़ाइल को हटाने के बारे में चिंता न करें, यह जानबूझकर और अच्छे कारणों से है। जब भी जरूरत हो तो एक नया बनाया जाएगा। डिस्क पर .ico फ़ाइल का फ़ाइल नाम XE2 .dproj फ़ाइल की सामग्री का उपयोग करके पढ़ा जाएगा और .res फ़ाइल में संकलित किया जाएगा, जैसा कि यह होना चाहिए।
3

जैसा कि हमेशा होता है, आपको आईडीई को किसी पुराने संस्करण से नए संस्करण में कनवर्ट नहीं करना चाहिए । रूपांतरण सही ढंग से काम करता है। आपको हमेशा नए आईडीई में एक नई परियोजना बनाना चाहिए और फिर अपनी मौजूदा स्रोत फ़ाइलों को आवश्यकतानुसार जोड़ना चाहिए।

+4

आप ऐसा क्यों कहते हैं? विचार को रूपांतरण करने के लिए मुझे कभी भी कोई समस्या नहीं हुई है। – dummzeuch

+2

फिर अपने आप को भाग्यशाली मानें, क्योंकि कई उपयोगकर्ताओं को इसके साथ समस्याएं हैं। बोरलैंड/कोडगियर/एम्बरकाडेरो मंचों ने परियोजना उन्नयन के मुद्दों के संबंध में वर्षों में कई शिकायतें/चिंताओं को पोस्ट किया है। यह कई मामलों में सही काम नहीं करता है। अधिकांश टीमबी सदस्यों (स्वयं शामिल) फोरम उपयोगकर्ताओं को वही चीज़ बताते हैं - वही बात जो मैंने यहां कहा था। किसी प्रोजेक्ट को अपग्रेड करना सबसे अच्छा है, आप नहीं जानते कि आईडीई गलत क्या हो सकता है। इसके बजाए एक नई परियोजना बनाएं। –

+4

मैंने इन समस्याओं को कई बार देखा है। मैं केवल .dpr और .dpk को हटाने के बारे में असहमत हूं। मुझे लगता है कि आपको किसी भी .dproj फ़ाइलों को हटाने की आवश्यकता है। '.dpr' प्लस .cfg या .dof से उन्नयन एक .dproj स्तर से दूसरे .dproj स्तर के अपग्रेड की तुलना में अधिक सहजता से काम करता है। .ico फ़ाइल त्रुटि है कि ओपी उल्लेख इस सामान्य प्रवृत्ति का एक दुर्लभ काउंटर उदाहरण है। लेकिन त्रुटि अधिकतर हानिरहित है, और इसका मतलब है कि आपको मैन्युअल रूप से एक अलग .ico फ़ाइल डालना चाहिए क्योंकि .ico फ़ाइल निष्कर्षण में .res विफल रहा। यदि आपके पास अब सादा .ico फ़ाइल नहीं है तो यह वास्तविक दर्द है। –

1

आपके इनपुट और सुझावों के लिए सभी को धन्यवाद।

चरण 1:

मेरे पोस्टिंग प्रस्तुत करने के बाद, मैं .ico मुद्दा और लापता संस्करण मुद्दा/संस्करण जानकारी को हल करने के मुद्दों पर ले जाने के लिए निम्न चरणों का प्रयास किया। .dProj फ़ाइल को संपादित किया और टैग के तहत default_app.manifest संबंधित प्रविष्टियों के संदर्भ को हटा दिया (मेरा प्रोजेक्ट प्लेटफ़ॉर्म 32 बिट है) मैंने नामस्थान सिस्टम से संबंधित टैग को छोड़कर इस के तहत सभी टैग हटा दिए हैं। Win; Data.Win; Datasnap.Win; वेब .Win; Soap.Win; Xml.Win; Bde; $ (DCC_Namespace)

इसके बिना मेरा एप्लिकेशन हमेशा 1.0.0.0 के रूप में संस्करण जानकारी दिखा रहा था और मैंने जो कुछ भी निर्दिष्ट किया था उसे अनदेखा कर रहा था।

(मुझे यकीन है कि नहीं करता है, तो यह एक सही कदम है लेकिन यह मेरी संस्करण जानकारी समस्या हल हो जाती हूँ। वहाँ एक सरल/एक और इस के लिए समाधान हो सकता है ...)

चरण 2. निकाले ico से पुराने .res फ़ाइल ने इसका नाम दिया और प्रोजेक्ट विकल्पों से परियोजना में .ico फ़ाइल को जोड़ा। भौतिक।आईसीओ फाइल प्रोजेक्ट फ़ोल्डर है और स्रोत नियंत्रण में जांच की जाएगी (मेरे मामले में वीएसएस)।

इन दो चरणों ने मुझे जो चाहिए उसे खरीदा और फिर मैं संस्करण संख्या को संशोधित कर सकता हूं और परियोजना संकलित कर सकता हूं। इस बिंदु से कोई समस्या नहीं है।

डी 7 से एक्सई 2 तक मेरे अनुप्रयोगों के लिए मुझे कुल रूपांतरण/माइग्रेशन के मुकाबले बहुत आसान था - यूनिकोड रूपांतरण, अनुकूलित राइज 5 componets को 6, टर्बो पावर, वर्चुअल ट्री व्यू, हाइपरग्रीड इत्यादि के लिए माइग्रेट करना। आदि ... सौभाग्य से मुझे इन सभी घटकों के XE2 संस्करण मिले।

+0

सिर्फ आपकी .dproj फ़ाइल को हटाने और केवल .dpr को रखने से नहीं, तेजी से चल रहे हैं? –

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