2009-09-16 14:15:16 +0000 2009-09-16 14:15:16 +0000
147
147
Advertisement

Comment puis-je mettre l'ordinateur en veille à partir du menu Invite de commande/Exécution ?

Advertisement

Je sais que presque tout sous Windows, comme l'ouverture de n'importe quelle sorte d'application, peut être fait à partir de l'invite de commande** ou du menu Exécution.

Comment puis-je mettre mon ordinateur en sommeil ou le couper ? Quelle est la commande pour cela ?

Advertisement

Réponses (11)

130
130
130
2009-09-16 14:21:19 +0000

Vous trouverez shutdown.exe pour être votre ami.

Autres commandes pratiques voir this post :

Sleep Computer (en savoir plus sur https://superuser. com/a/463652/249349 )

Lock Workstation

Hibernate Computer

see answers by Scott Chamberlain and Eric L

Restart Computer

Shutdown.exe -r -t 00

Shutdown Computer

Shutdown.exe -s -t 00

EDIT/UPDATE :

Il semble que la mise en veille d'un ordinateur soit problématique si l'hibernation est activée.

Copie d'autres réponses :

Vous pouvez soit essayer PsShutdown ou :

La commande rundll32.exe powrprof.dll,SetSuspendState 0,1,0 pour le sommeil est correcte - cependant, il hibernera au lieu de dormir si vous n'éteignez pas l'hibernation.

Voici comment faire :

Allez dans le menu Démarrer et ouvrez une invite de commande surélevée en tapant cmd.exe, en faisant un clic droit et en choisissant Exécuter en tant qu'administrateur. Tapez la commande suivante :

powercfg -hibernate off
87
87
87
2012-02-29 20:57:51 +0000

Les méthodes postées par d'autres personnes ne fonctionnent pas correctement si un ordinateur a activé l'hibernation, l'ordinateur ne se réveillera pas sur Keyboard ou, plus important encore, ne se réveillera pas sur une tâche programmée.

Un des outils Sysinternals de Microsoft est PsShutdown utilisant la commande psshutdown -d -t 0 il se mettra correctement en veille, pas en hibernation, un ordinateur

10
Advertisement
10
10
2013-04-06 18:11:55 +0000

NirCmd fonctionne sous Windows 8 (je suppose qu'il fonctionne également sous Windows 7) → http://www.nirsoft.net/utils/nircmd.html La commande est standby, mais elle met l'ordinateur en veille.

nircmd.exe standby

Si vous avez activé la veille hybride, elle fonctionnera ; c'est-à-dire qu'elle met l'ordinateur en veille et copie la mémoire sur disque en cas de coupure de courant.

3
3
3
2009-09-16 19:33:56 +0000

Voir l'utilitaire gratuit de Wizmo , qui peut faire beaucoup de choses. La commande que vous recherchez est probablement :

wizmo standby

3
Advertisement
3
3
2017-01-29 14:55:59 +0000

J'ai créé un raccourci pour rundll32.exe powrprof.dll,SetSuspendState 0,1,0 (j'ai aussi essayé avec 0,0,0), mais l'exécution du raccourci semblait mettre mon PC en hibernation. Je ne pouvais pas réveiller le PC en utilisant le clavier ; je devais appuyer sur le bouton d'alimentation, et le PC affichait les messages postés sur la carte mère, etc.

Après avoir lu le document API Windows , j'ai créé un programme très simple avec seulement 3 lignes de frappe. J'ai téléchargé l'exécutable que j'ai compilé sur cette page (cliquez sur le “SleepTest.exe”) , mais ce fichier pourrait être supprimé après un certain temps (c'est un site d'hébergement de fichiers gratuit que je viens de trouver par une recherche rapide sur Google).

Si vous ne me faites pas confiance (ce qui est tout à fait correct) ou si le fichier a été supprimé, vous pouvez bien sûr compiler le code vous-même. Vous devez ajouter “PowrProf.lib” aux dépendances supplémentaires du Linker.

#include "stdafx.h"
#include "windows.h" <-- Added this to make it work on Windows.
#include "PowrProf.h" <-- Added this to use the sleep function.

int main()
{
    SetSuspendState(FALSE, FALSE, FALSE); <-- Added this actual call.
    return 0;
}

rundll32.exe powrprof.dll,SetSuspendState 0,1,0 semble faire la même chose, mais d'une manière ou d'une autre, le programme ci-dessus n'a pas mis l'ordinateur en hibernation. Je pouvais réveiller l'ordinateur instantanément (pas de messages postés sur la carte mère, etc.) en appuyant sur n'importe quelle touche du clavier.

2
2
2
2009-09-17 05:10:31 +0000

Vous pouvez lancer les options de suspension ou d'hibernation à partir de la ligne de commande comme indiqué ci-dessous et référencé dans cet article .

%windir%\System32\rundll32.exe powrprof.dll,SetSuspendState

Si votre ordinateur est réglé pour permettre l'hibernation, la commande ci-dessus lancera l'hibernation. Si la fonction d'hibernation est désactivée, l'ordinateur passe en état de veille. Comme d'autres utilisateurs l'ont déjà fait, shutdown.exe /? propose de nombreuses options d'arrêt.

1
Advertisement
1
1
2012-07-22 20:56:36 +0000

Vous devez d'abord désactiver l'hibernation dans Windows, puis mettre l'ordinateur en état de sommeil. Utilisez les deux commandes suivantes :

powercfg -hibernate off
rundll32.exe powrprof.dll,SetSuspendState 0,1,0

et pour effectuer une action inverse, Hibernate l'ordinateur, utilisez les commandes ci-dessous :

powercfg -hibernate on
rundll32.exe powrprof.dll,SetSuspendState Hibernate
1
1
1
2012-08-07 00:27:31 +0000

Microsoft fournit PsTools qui vous permet de fermer le CLI ainsi que d'autres outils utiles. Vous pouvez l'obtenir ici .

1
Advertisement
1
1
2016-03-19 09:53:53 +0000

seulement QUICK SLEEPER fonctionne pour moi (fonctionne sous Windows 7,8,10).

p.s. code source disponible ici .

1
1
1
2016-10-27 23:19:30 +0000

Si vous disposez de Python (avec pywin32), vous pouvez également appeler cette fonction SetSuspendState directement avec :

import ctypes
ctypes.windll.PowrProf.SetSuspendState(0, 1, 0)

Cela peut facilement être mis dans un fichier batch ou un raccourci comme :

pythonw -c "import ctypes; ctypes.windll.PowrProf.SetSuspendState(0, 1, 0)"

Donc si vous n'avez pas vos fichiers .py associés à l'interpréteur, vous pouvez simplement double-cliquer sur le lien.

1
Advertisement
1
1
2018-04-03 05:28:08 +0000

La partie “arrêt” de la question est claire pour tout le monde. shutdown.exe /? montre tous les choix d'arrêt / redémarrage / démarrage des options avancées / démarrage du firmware.

Mais je vois tant de critiques à propos de la partie “sommeil”. _Tout le monde comprend que rundll32.exe ne doit pas être utilisé pour appeler des fonctions aléatoires et qu'il fonctionne ici pour hiberner entièrement par coïncidence. Mais c'est la nature même de Windows - une boîte noire que les gens ont fouillée et ont trouvé des centaines de solutions de rechange pour faire un travail (crier aux bouts). Il y a tellement de solutions “appropriées” proposant des outils externes, mais je n'arrive pas à trouver un script batch natif (hybride / pinvoke / n'importe quoi), même si cette question est restée active au fil des ans. Voici donc ma simple * power_sleep.bat ** :

@echo off &mode 32,2 &color cf &title Power Sleep
set "s1=$m='[DllImport ("Powrprof.dll", SetLastError = true)]"
set "s2=static extern bool SetSuspendState(bool hibernate, bool forceCritical, bool disableWakeEvent);"
set "s3=public static void PowerSleep(){ SetSuspendState(false, false, false); }';"
set "s4=add-type -name Import -member $m -namespace Dll; [Dll.Import]::PowerSleep();"
set "ps_powersleep=%s1%%s2%%s3%%s4%" 
call powershell.exe -NoProfile -NonInteractive -NoLogo -ExecutionPolicy Bypass -Command "%ps_powersleep:"=\"%"
exit

Elle fonctionne même comme une grosse commande à une ligne :

powershell.exe -C "$m='[DllImport(\"Powrprof.dll\",SetLastError=true)]static extern bool SetSuspendState(bool hibernate,bool forceCritical,bool disableWakeEvent);public static void PowerSleep(){SetSuspendState(false,false,false); }';add-type -name Import -member $m -namespace Dll; [Dll.Import]::PowerSleep();"
Advertisement