CMD स्क्रिप्ट का उपयोग करके EXE एक्सटेंशन के बिना एक निष्पादन योग्य फ़ाइल कैसे चलाएं?


19

स्थिति यह है कि मेरे पास एक पोर्टेबल एप्लिकेशन है जिसे पर्यावरण चर सेट करने की आवश्यकता है। अन्य तरीके से यह सेट करने की कोशिश करता है कि यह उपयोगकर्ता प्रोग्राम डेटा में सेटिंग्स है।

(यह किसी भी पैरामीटर के बिना चलाने की अनुमति से बचने के लिए) मैं फ़ाइल के ".exe" विस्तार मिट, लेकिन फिर मैं यह न केवल माउस द्वारा नहीं चलाया जा सकता है (जो मैं चाहता हूँ) गैर पोर्टेबल मोड में निष्पादन दिखाने से बचना लेकिन यह भी के माध्यम से करने के लिए startआदेश ।

क्या ऐसी निष्पादन योग्य फ़ाइल को चलाने का कोई तरीका है जिसमें कोई exe एक्सटेंशन नहीं है?


आपका प्रश्न वास्तव में स्पष्ट नहीं है। यदि आपने गलती से .EXE एक्सटेंशन हटा दिया है, तो आप इसे वापस क्यों नहीं जोड़ सकते? आपको ऐसा करने से क्या रोक रहा है?
करण

मैंने इसे गलती से नष्ट नहीं करने के उद्देश्य से हटा दिया है, इसलिए यह कार्यक्रम बिना किसी पैरामीटर के चलेगा। मैं केवल प्रारंभ में विकल्पों के साथ कार्यक्रम चलाने के लिए सुरक्षित रहना चाहता हूं।
rsk82

जवाबों:


14

हां - बस प्रोग्राम के पूर्ण फ़ाइलनाम में प्रवेश करना आमतौर पर काम करता है। ( .exeआवश्यकता केवल जीयूआई शेल में मौजूद है।)

(यह हो सकता है कि फ़ाइल को एक एक्सटेंशन की आवश्यकता हो , हालांकि - इसलिए यदि आप MyProgramचलाने के लिए नहीं मिल सकते हैं, तो इसे फिर से नाम दें MyProgram.notexeया MyProgram.lolपुनः प्रयास करें।)


1
यह मैं एक बार हैरान कर दिया, जब मैं से एक स्वयं निकालने ज़िप फ़ाइल का नाम बदला .exeकरने के लिए .zip, cmd.exe के माध्यम से खोलने की कोशिश की, और यह अभी भी बजाय WinZip खोलने की आत्म निकालने भाग गया।
user1686

मुझे पता नहीं है कि परिवर्तन के साथ चाल, कार्यक्रम को कुछ डमी की आवश्यकता हो सकती है, इतना सहज नहीं है। लेकिन वैसे भी मुझे एक और बमर का सामना करना पड़ा जो कि एक सख्त नाम रखने के लिए एप्लिकेशन को अपने मुख्य निष्पादन योग्य की आवश्यकता है।
rsk82

1
कुछ भी शुरू होता है MZजिसे cmd द्वारा निष्पादित किया जाएगा, नीचे देखें
Пет Пр Петров

17

किसी भी एक्सटेंशन और पहले दो बाइट्स वाली कोई भी फ़ाइल MZEXE की तरह मानी जाएगी।

निम्नलिखित का प्रयास करें:

  1. एक नई a.txtफ़ाइल बनाएँ ,
  2. इसमें टाइप करें, इसे MZसेव करें।
  3. खोलें cmd, इसके फ़ोल्डर में जाएं,
  4. टाइप करें a.txtऔर त्रुटि संदेश देखें।

के MZसाथ बदलें MSऔर फिर से प्रयास करें - इस बार नोटपैड फ़ाइल खोली के साथ चलेगा।


1
विंडोज 10 में काम नहीं करता है। यह हमेशा '' is not recognized as an internal or external command, operable program or batch file.त्रुटि दिखाता है
phuclv

मैंने अभी-अभी विंडोज 10 प्रो के साथ घर पर कोशिश की है और यह वास्तव में एक त्रुटि दिखाता है This version of D:\test.txt is not compatible with the version of Windows you're running. Check your computer's system information and then contact the software publisher.पहले मैंने काम पर विंडोज 10 एलटीएसबी का उपयोग किया था और यह काम नहीं किया
फुलव्यू

यह अभी भी मेरे विंडोज 10 एक्स 64 पर काम करता है, ऊपर जैसा ही उदाहरण।
Пет18р Петров

यदि आप किसी एक्सटेंशन के बिना किसी फ़ाइल को निष्पादित करने का प्रयास करते हैं, तो यह एक 'file' is not recognizedत्रुटि फेंक देगा ।
स्टेविसीक

2

मैंने .exe एक्सटेंशन के बिना फ़ाइल से प्रक्रिया चलाने का प्रयास किया। जब मैं cmd.exe से ऐसा करने में विफल रहा, तो मैं कुछ शक्तियां कमांड देता हूं। यहाँ एक है:

प्रारंभ प्रक्रिया

दस्तावेज़ डिफ़ॉल्ट सिंटैक्स और UseShellExecute के बारे में कहता है। विद जस्ट:

Start-Process -FilePath .\my-program -Wait -NoNewWindow

कमांड UseShellExecute सिंटैक्स का उपयोग करता है और उस फ़ाइल प्रकार से संबद्ध अनुप्रयोग के बारे में त्रुटि नहीं देता है। डिफ़ॉल्ट सिंटैक्स को लागू करने के लिए मैंने पैरामीटर जोड़ा जो कि UseShellExecute में नहीं है:

Start-Process -FilePath .\my-program -Wait -RedirectStandardError ./error.txt -NoNewWindow

मेरा कार्यक्रम शुरू किया गया था और कंसोल को आउटपुट लिखा था। मेरे लिए यह पर्याप्त था, क्योंकि मुझे केवल परीक्षण उद्देश्य के लिए इसकी आवश्यकता थी।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.