Dosya C:\windows\system32\shutdown.exe
Windows'u kapatmak veya yeniden başlatmak için gerekli mi?
shutdown -s -t 0
- düz bir shutdown
yardım sadece görüntüler.
Dosya C:\windows\system32\shutdown.exe
Windows'u kapatmak veya yeniden başlatmak için gerekli mi?
shutdown -s -t 0
- düz bir shutdown
yardım sadece görüntüler.
Yanıtlar:
Elbette sorunuz, https://codegolf.stackexchange.com/a/24011/18907 adresindeki cevabınızdan, özellikle de kinokijuf
cevabınızın ilk revizyonundaki yorumundan kaynaklanıyor.
Dediği gibi kinokijuf
, Windows Unix değil. Unices ve Linux'ta, shutdown
tamamen kapanma sürecine dahil oluyor. Giriş yapan kullanıcılara düzenli uyarı mesajları gönderen /run/nologin
ve zamanlanmış kapanma süresinden kısa bir süre önce oturum açmayı önlemek için dosyayı yazan programdır.
Windows NT'DE bu durum böyle değil.
Windows Gezgini Başlat menüsündeki "güç düğmesi" üzerindeki "Kapat" eylemi, Görev Yöneticisi, REBOOT /S
TCC veya Take Command'daki "Kapat" menü seçeneği ve sistemi tüm başlatmayı kapatmanıza izin veren diğer uygulamalar programları doğrudan iki Win32 API çağrısından birini arayarak: InitiateSystemShutdownEx()
veya ExitWindowsEx()
. shutdown
Programı çalıştırarak dolaylı olarak şeyler yapmazlar . (Bunun aslında Win32 API çağrısını çağırmaktan daha fazla kod yapması gerekir.) shutdown
Yerel kapatmayı yapan program aynı Win32 API çağrısını da çağırır.
Aslında winlogon
, csrss
ve smss
bu Windows NT'yi kapatan programlardır. Özellikle, winlogon
ertelenmiş kapatma taleplerinin işlenmesi ana işidir.
shutdown
. FreeBSD 9.2 kılavuz sayfaları . 2013/03/19.shutdown
. systemd
manuel sayfalar . 2013. Freedesktop.org.shutdown
. upstart
manuel sayfalar . 2009. Canonical Ltd.InitiateSystemShutdownEx
. MSDN. Microsoft şirketi.ExitWindowsEx
. MSDN. Microsoft şirketi.REBOOT
. Komutanlığı / TCC Yardımını alın. JP Yazılım.shutdown
komutun tamamen kapatma işlemine dahil olmadığını unutmayın; Uyarı mesajları ya da dokun / çalıştır / nologin gönderebilse de, fiilen kapatılması ile ilgili tüm işlemleri sistemd, init, vb. öğelerine uygun komutu göndermek ve çıkış yapmaktır. Başlangıç süreci veya modern değiştirme sistemi aslında sistemi kapatma işini yapar.
shutdown
tam önünüzde. Bunun, Linux'a Giriş’in TLDP’de “UNIX'in kapatılması için yapılmayacağını” söyleyen saçmalık kadar yanlış olduğunu düşünmek . UNIX gerçekten kapatılmıştı ve son 40 yılda UNIX uzmanları için prosedürün tamamını kapsayan ve kullanıcılara adım 1 olarak uyarı mesajları veren oldukça fazla kitap var.
shutdown
sayfa 22, ama benim kütüphanede değil. Üzgünüm, M. Smith. (-: Kütüphanem, Coffin’in SVR5 Referansına (355 ve 683 sayfalarında açıklanan uyarı kullanıcı adımı), bir SCO UNIX Sistem Yönetici Kılavuzu'na (52-53 sayfalarında ilk adım olarak kapatma konusunda uyarılar) ve hatta Fielder’in / Hunter'ın UNIX Sistem Yönetimi (bölüm 6 bütün bölümün başında uyarı kullanıcılar ile, kapatma hakkındadır) bir uzmanları bu kaplamak için daha birçok kitaplar bulabilirsiniz..
Yok hayır.
Explorer, Başlat menüsünden kapattığınızda bu komutu çağırmaz.
Sistemin kapatılması bir Win32 API çağrısı ile mümkündür (@ JdeBP'nin cevabı ilginizi çekiyorsa bununla ilgili büyük detaylar sağlar). Komut, bir komut dosyasından, zamanlanmış görevden veya Çalıştır iletişim kutusundan yapmanın kolay bir yoludur.
shutdown.exe
zarif bir kapatma bile yapmaz.
shutdown
aslen yaptığı hakkındaki açıklama için , sorunun bağlamına bakın (soruda bulunmayan, ancak benim cevabımdaki ve oraya gösterilenler) . (Bu bölümleri) yükleyicileri genellikle yalnızca Win32 API'yi çağıran derlenmiş dillerde yazılır.
Ultrasawblade (upvote) tarafından açıklandığı gibi, sistem kapatma bir Win32 API çağrısıdır: ExitWindowsEx
Bağlantının ayrıca C'den kapatma uygulamasının nasıl yapıldığına dair bir örneği vardır. Ayrıca, P / Invoke (Platform Invoke) kullanarak C # 'dan da yapabilirsiniz. pinvoke.net kullanım için hazır çok sayıda imza var: http://www.pinvoke.net/default.aspx/user32/exitwindowsex.html
Bu gerekli değil. shutdown.exe
yerel veya uzaktaki bir bilgisayarı kapatmak için sadece bir yardımcı programdır. Öyle görünüyor shutdown.exe
kullanımlar Yerli API 's NtShutdownsystem
. Windows kullanırken ExitWindowsEx
( daha önce de belirtildiği gibi ).