क्या shutdown.exe विंडोज को बंद करने के लिए आवश्यक है?


36

क्या C:\windows\system32\shutdown.exeविंडोज को शटडाउन या रिस्टार्ट करने के लिए फाइल जरूरी है?


16
इसे कुछ और नाम देकर देखें और देखें।
मार्टिउ

10
@ मुकुलकुमार कोई है जो प्रभाव का पता लगाना चाहता है, और जानता है कि वे इसे आसानी से उलट सकते हैं?
जॉन बेंटले

8
@ THEGreenCabbage: आपको जारी करने की आवश्यकता है shutdown -s -t 0- एक सादा shutdownही मदद प्रदर्शित करता है।
लॉरेंस

9
किसी भी फ़ाइल के नाम पर ध्यान दिए बिना, कंप्यूटर को खोलना बंद कर देना चाहिए।
डेविड स्टार्की

7
@DavidStarkey: "शट-ऑफ" और "शट डाउन" एक ही बात नहीं है, हालांकि।
मोनिका

जवाबों:


31

आपका प्रश्न निश्चित रूप से https://codegolf.stackexchange.com/a/24011/18907 पर आपके उत्तर से उत्पन्न होता है , विशेष रूप से kinokijufआपके उत्तर के प्रारंभिक संशोधन पर टिप्पणी से ।

जैसा kinokijufकि कहा गया है, विंडोज यूनिक्स नहीं है। यूनिक्स और लिनक्स पर, shutdownवास्तव में पूर्ण शटडाउन प्रक्रिया में शामिल है। यह प्रोग्राम है जो लॉग-इन उपयोगकर्ताओं को नियमित चेतावनी संदेश भेजता है और जो /run/nologinनिर्धारित शटडाउन समय से कुछ समय पहले लॉग-ऑन को रोकने के लिए फ़ाइल लिखता है ।

विंडोज एनटी पर, यह मामला नहीं है।

Windows Explorer प्रारंभ मेनू पर "पावर बटन" पर "शट डाउन" कार्रवाई, REBOOT /STCC या टेक कमांड में टास्क मैनेजर में "शटडाउन" मेनू विकल्प , और अन्य एप्लिकेशन प्रोग्राम जो आपको सिस्टम को बंद करने की अनुमति देते हैं। दो Win32 एपीआई कॉल में से एक को सीधे कॉल करके: InitiateSystemShutdownEx()या ExitWindowsEx()। वे shutdownकार्यक्रम को चलाकर अप्रत्यक्ष रूप से काम नहीं करते हैं । (वास्तव में केवल Win32 API कॉल को कॉल करने की तुलना में अधिक कोड की आवश्यकता होती है।) shutdownप्रोग्राम, जब कोई स्थानीय शटडाउन कर रहा होता है, उन्हीं Win32 API कॉल को कॉल करता है।

यह वास्तव winlogonमें है csrss, और smssवह प्रोग्राम हैं जो विंडोज एनटी को बंद करते हैं। विशेष रूप से, यह है winlogonकि शटडाउन अनुरोधों को स्थगित करने का मुख्य कार्य करता है।

आगे की पढाई

  • जोनाथन डी बॉयने पोलार्ड (2006)। Windows NT 6 शटडाउन प्रक्रिया । बार-बार दिए गए जवाब।
  • shutdownFreeBSD 9.2 मैनुअल पेज । 2013-03-19।
  • shutdownsystemdमैनुअल पेज । 2013. Freedesktop.org।
  • shutdownupstartमैनुअल पेज । 2009. Canonical Ltd.
  • InitiateSystemShutdownEx। MSDN। माइक्रोसॉफ़्ट कॉर्पोरेशन।
  • ExitWindowsEx। MSDN। माइक्रोसॉफ़्ट कॉर्पोरेशन।
  • REBOOT। कमांड / टीसीसी सहायता लें। जेपी सॉफ्टवेयर।

1
आप वास्तव में एक समझदार उत्तरदाता हैं! मुझे अपनी प्रोफ़ाइल के माध्यम से वास्तविक स्थिति में वापस आने का तरीका पसंद आया।
मुकुल कुमार

ध्यान दें कि लिनक्स सिस्टम पर, shutdownकमांड पूरी तरह से शटडाउन प्रक्रिया में शामिल नहीं है; हालांकि यह चेतावनी संदेश या टच / रन / नॉलिन भेज सकता है, यह सब वास्तव में शटडाउन करने के संबंध में करता है, सिस्टमड, इनिट आदि के लिए उपयुक्त कमांड भेजना है, और बाहर निकलें। Init प्रक्रिया या इसके आधुनिक प्रतिस्थापन प्रणाली वास्तव में सिस्टम को बंद करने का काम करती है।
माइकल हैम्पटन

नहीं, एम। हैम्पटन, संदेश भेजना और लोगों को रोकना पूर्ण बंद प्रक्रिया का एक पूर्ण भाग है। यह सोचकर मत जाओ कि यह जादुई रूप से लिनक्स के साथ चला गया है। दो लिनक्स shutdowns के लिए मैनुअल पेज आपके सामने सही हैं। यह सोचना कि टीएलडीपी में लिनक्स के परिचय में बकवास के रूप में गलत है जो कहता है कि "UNIX को बंद करने के लिए नहीं बनाया गया है"। UNIX को वास्तव में बंद करने के लिए बनाया गया था, और चरण # 1 के रूप में उपयोगकर्ताओं को चेतावनी संदेशों के साथ, पूर्ण प्रक्रिया को कवर करने वाले UNIX पेशेवरों के लिए पिछले 40 वर्षों में बहुत सी किताबें हैं।
JdeBP

यहां तक ​​कि लिनक्स पेशेवरों के लिए किताबें भी हैं। मैं रॉड स्मिथ के एलपीआईसी स्टडी गाइड को प्लग करूँगा , जिसमें shutdownपेज 22 है, लेकिन यह मेरी लाइब्रेरी में नहीं है। क्षमा करें, एम। स्मिथ। (-: मेरी लाइब्रेरी में कॉफ़िन के एसवीआर 5 संदर्भ (पृष्ठ 355 और 683 पर वर्णित चेतावनी वाले उपयोगकर्ता चरण), एक एससीओ यूनिक्स सिस्टम एडमिनिस्ट्रेटर गाइड (पेज 52-53 पर उपयोगकर्ताओं को पहले चरण के रूप में बंद करने के लिए चेतावनी, और यहां तक ​​कि फील्डर / / की पसंद है) हंटर की UNIX सिस्टम एडमिनिस्ट्रेशन (अध्याय 6 की पूरी जानकारी शटडाउन के बारे में है, अध्याय की शुरुआत में उपयोगकर्ताओं को चेतावनी के साथ)। कोई भी इसे कवर करने वाले पेशेवरों के लिए कई और किताबें पा सकता है।
JdeBP

55

नहीं।

जब आप स्टार्ट मेनू से शट डाउन करते हैं तो एक्सप्लोरर इस कमांड को कॉल नहीं करता है।

Win32 API कॉल के साथ सिस्टम को शट डाउन करना संभव है (@ JdeBP का जवाब उस पर बहुत अच्छा विवरण प्रदान करता है यदि रुचि हो)। यह स्क्रिप्ट, शेड्यूल किए गए कार्य या रन संवाद से करने के लिए कमांड एक सुविधाजनक तरीका है।


वास्तव में, shutdown.exeएक सुंदर बंद भी नहीं करता है।
किनोकिजुफ

उस उत्तर से सावधान! एक्सप्लोरर उस कमांड को कॉल नहीं करता है, लेकिन अन्य प्रक्रियाएं जो विंडोज़ को बंद या पुनरारंभ करती हैं: और यह स्क्रिप्ट या शेड्यूल किए गए कार्य या आपके sysadmin से शेड्यूल किए गए रखरखाव कार्य के लिए सिर्फ 'इसे करने का एक सुविधाजनक तरीका' नहीं है।
निगेल हेफर्नन

1
यह "आवश्यक" नहीं बनाता है, नाइल। प्रश्न के संदर्भ को देखें (जो कि प्रश्न में नहीं है, लेकिन मेरे उत्तर में है और वहां जो बताया गया है) उस खंड के लिए जो प्रश्नकर्ता प्रश्न कर रहा था, और shutdownउस प्रश्न के बारे में वक्तव्य जो मूल रूप से बनाया गया था। (इन भागों के) इंस्टॉलर अक्सर संकलित भाषाओं में लिखे जाते हैं जो बस Win32 एपीआई को कॉल करते हैं, वैसे।
JdeBP

8

जैसा कि ultrasawblade (upvote) द्वारा समझाया गया है, सिस्टम शटडाउन एक Win32 API कॉल है: ExitWindowsEx

लिंक में सी से शटडाउन को कैसे लागू किया जाए, इस पर भी एक उदाहरण है। आप इसे पी # / इनवोक (प्लेटफॉर्म इनवोक) का उपयोग करके कर सकते हैं। pinvoke.net में उपयोग के लिए हस्ताक्षर का एक गुच्छा उपलब्ध है: http://www.pinvoke.net/default.aspx/user32/exitwindowsex.html


4

यह आवश्यक नहीं है। shutdown.exeबस एक स्थानीय या दूरस्थ कंप्यूटर को बंद करने के लिए एक उपयोगिता है। ऐसा लग रहा है shutdown.exeका उपयोग करता है मूल निवासी एपीआई 'एस NtShutdownsystem। जबकि विंडोज उपयोग करता है ExitWindowsEx( जैसा कि पहले ही उल्लेख किया गया है )।

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