मेरे पास एक बैच फ़ाइल है जो एक इंस्टॉलर के आसपास एक आवरण है। यह बैच फ़ाइल इंस्टॉलर द्वारा लौटाए गए त्रुटि स्तर की जांच करती है और तदनुसार प्रिंट करती है।
मैंने देखा कि अगर मैं set ERRORLEVEL=0
बैच फ़ाइल (उसी कमांड विंडो / वातावरण में) को बंद करने से पहले एक कमांड प्रॉम्प्ट में निष्पादित करता हूं , तो इंस्टॉलर कभी भी त्रुटि के साथ गड़बड़ नहीं करता है और मेरी बैच स्क्रिप्ट हमेशा वापस आ जाती है। मुझे लगता %ERRORLEVEL%
है कि विंडोज द्वारा परिभाषित एक चर है और विशेष रूप से कार्यक्रमों और लिपियों से त्रुटियों को प्रिंट करने के लिए उपयोग किया जाता है और यह कि बैच फ़ाइल में चर का उपयोग करते हुए या कुछ और 'अपने जोखिम पर' होगा क्योंकि इसे किसी भी क्षण बदला जा सकता है एक और प्रक्रिया।
यह ऐसा लगता है कि जब मैं दिए गए वातावरण में एररवेवल सेट करता हूं, तो यह किसी तरह एग्जॉस्ट कोड के धारक के रूप में एररवेवल के उपयोग को समाप्त कर देता है। क्या किसी को पता है कि यह क्यों है? मेरे लिए यह सिर्फ अजीब अप्रत्याशित व्यवहार है। विषय पर किसी भी जानकारी की बहुत सराहना की जाएगी!
&&
या नहीं||
।