2011-12-30 2 views
66

के बीच अंतर cscript और wscript के बीच क्या अंतर है? विंडोज में टेलनेट और एफ़टीपी स्वचालन करने के लिए सबसे अच्छा कौन सा है?wscript और cscript

+2

[vbs cscript.exe wscript.exe] (http के संभावित डुप्लिकेट। कॉम/प्रश्न/5788303/vbs-cscript-exe-wscript-exe) – McDowell

उत्तर

105

विंडोज में, एक निष्पादन योग्य या तो एक कंसोल एप्लिकेशन या एक विंडोज़ एप्लिकेशन (या एक एसएफयू या मूल अनुप्रयोग है, लेकिन इससे कोई फर्क नहीं पड़ता)।

कर्नेल निष्पादन योग्य में एक ध्वज को निर्धारित करने के लिए जांचता है।

जब CreateProcess WinAPI समारोह का उपयोग कर, अगर यह एक सांत्वना अनुप्रयोग है, कर्नेल अगर माता-पिता की प्रक्रिया एक भी नहीं है इसके लिए एक कंसोल विंडो पैदा करेगा, और कंसोल के लिए STDIN, STDOUT और STDERR धाराओं देते शुरू।

यदि यह एक विंडोज़ एप्लीकेशन है, तो कोई कंसोल नहीं बनाया जाएगा और STDIN, STDOUT और STDERR डिफ़ॉल्ट रूप से बंद हो जाएगा।

WSCRIPT.EXE और CSCRIPT.EXE लगभग बिल्कुल समान हैं, सिवाय इसके कि किसी को विंडोज़ एप्लिकेशन के रूप में फ़्लैग किया गया है और दूसरा कंसोल एप्लिकेशन के रूप में फ़्लैग किया गया है (अनुमान लगाएं कि किस तरह से!)।

तो जवाब यह है: यदि आप अपनी स्क्रिप्ट को कंसोल विंडो रखना चाहते हैं, तो CSCRIPT.EXE का उपयोग करें। यदि आप चाहते हैं कि इसमें कंसोल विंडो न हो, तो WSCRIPT.EXE का उपयोग करें।

यह कुछ व्यवहारों को भी प्रभावित करता है, जैसे WScript.Echo कमांड। CSCRIPT.EXE में यह कंसोल विंडो के लिए एक पंक्ति लिखता है। WSCRIPT.EXE में यह एक संदेश बॉक्स दिखाता है।

आपके आवेदन के लिए मैं CSCRIPT.EXE का सुझाव देता हूं। मुझे लगता है कि आप भी पुट्टी और plink पर गौर करना चाहिए, और आप भी इस देखना चाहिए: // stackoverflow:

+3

@ मैकडॉनल्ड्स मैं बस एक जीवित रहने की कोशिश कर रहा हूं। मेरे पास स्टैक ओवरफ्लो का उपयोग करने के अलावा कोई वास्तविक विकल्प नहीं है क्योंकि कोई विकल्प नहीं है, और मैं उस महीने से अपने नाश्ते को पचाने में कठिनाई के बारे में राजनीतिक बिंदु बनाने के लिए साइट का उपयोग करने के तरीके से घृणा करता हूं। तो मेरा उपयोगकर्ता नाम * हर शापित चीज़ * के राजनीतिकरण के खिलाफ मेरा विरोध है। – Ben

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