Je sais que presque tout sur Windows, comme l’ouverture de toute application, peut être effectué à partir de l’ invite de commande ou du menu Exécuter .
Comment puis-je mettre mon ordinateur en veille ou l' éteindre ? Quelle est la commande pour cela?
Réponses:
Vous allez trouver
shutdown.exe
pour être votre ami.Autres commandes pratiques voir ce post:
Ordinateur en veille (pour en savoir plus, consultez https://superuser.com/a/463652/249349 )
Verrouiller le poste de travail
Ordinateur Hibernate
Redémarrer l'ordinateur
Éteindre l'ordinateur
EDIT / UPDATE:
Il semble que le fait de dormir sur un ordinateur pose problème si le mode veille prolongée est activé.
Copier d'autres réponses:
Vous pouvez soit essayer PsShutdown ou:
la source
rundll32.exe powrprof.dll,SetSuspendState 0,1,0
est que cela ne fonctionne pas comme il se doit.SetSuspendState
mettra l'ordinateur dans une sorte de mode veille hybride / veille prolongée. Lorsque vous utilisez le bouton Mettre en veille du menu Démarrer, vous pouvez sortir votre ordinateur du mode veille en appuyant sur n’importe quelle touche de votre clavier. En utilisant cette ligne de commande, make est beaucoup plus lent à reprendre en raison de l'état de veille plus profond et ne peut reprendre que si vous appuyez sur le bouton d'alimentation de votre ordinateur. Il ne peut pas reprendre pour une pression sur une touche. Alors ... comment faites-vous dormir comme en veille normale - vous pouvez le reprendre en appuyant sur une touche?rundll32
ne doit pas être utilisé pour appelerSetSuspendState
car sa signature ne correspond pas à celle attendue parrundll32
. Voir: support.microsoft.com/en-us/kb/164787 et msdn.microsoft.com/en-us/library/windows/desktop/… Le premier paramètre obtient un garbage au lieu de FALSE. C'est la raison pour laquelle il hiberne au lieu de s'endormir.Les méthodes publiées par d'autres personnes ne fonctionnent pas correctement si l'hibernation est activée sur un ordinateur, si l'ordinateur ne se réveille pas sur le clavier ou, plus important encore, s'il ne se réveille pas avec une tâche planifiée.
PsShutdown est l’un des outils Sysinternals de Microsoft, qui utilise la commande
psshutdown -d -t 0
pour dormir correctement et non pour mettre en veille prolongée un ordinateur.la source
run as administrator
option de clic droitpsshutdown.exe
depuis l’archiv afin, par exempleC:\Windows\System32
, de pouvoir utiliser la commande sans pathprefix. Il faut ensuite exécuterpsshutdown -d -t 0
avec les privilèges d'administrateur pour pouvoir suspendre. Cela devrait être la réponse acceptée , car elle répond à la question, même si ce n'est pas avec les outils préinstallés par Windows.La commande
rundll32.exe powrprof.dll,SetSuspendState 0,1,0
de veille est correcte. Toutefois, elle passe en veille prolongée au lieu de dormir si vous ne désactivez pas la veille prolongée.Voici comment faire cela:
Accédez au menu Démarrer et ouvrez une invite de commande avec privilèges élevés en la saisissant
cmd.exe
, en cliquant avec le bouton droit de la souris et en choisissant Exécuter en tant qu'administrateur . Tapez la commande suivante:la source
powrprof.dll
lorsque la veille prolongée est activée? Veux juste savoir. Cela a-t-il un rapport avec l'un des états ACPI?rundll32
ne doit pas être utilisé pour appelerSetSuspendState
car sa signature ne correspond pas à celle attendue parrundll32
. Voir: support.microsoft.com/en-us/kb/164787 et msdn.microsoft.com/en-us/library/windows/desktop/… Le premier paramètre obtient garbage au lieu de FALSE. C'est la raison pour laquelle il hiberne au lieu de s'endormir.NirCmd fonctionne sous Windows 8 (je suppose que cela fonctionne également avec Windows 7) → http://www.nirsoft.net/utils/nircmd.html
La commande est
standby
, mais met l'ordinateur en veille.Si vous avez activé la veille hybride, cela fonctionnera; c'est-à-dire qu'il met l'ordinateur en veille et copie la mémoire sur le disque en cas de coupure de courant.
la source
Voir l'utilitaire gratuit de Wizmo , qui peut faire beaucoup de choses.
La commande que vous recherchez est probablement:
la source
rundll32.exe powrprof.dll,SetSuspendState 0,1,0
- cela met l'ordinateur en veille hibernante et non en sommeilJ'ai créé un raccourci pour
rundll32.exe powrprof.dll,SetSuspendState 0,1,0
(également essayé avec 0,0,0), mais le raccourci semble mettre mon PC en veille prolongée. Je ne pouvais pas réveiller le PC en utilisant le clavier; J'ai dû appuyer sur le bouton d'alimentation, et le PC a montré les messages après 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 "SleepTest.exe") , mais ce fichier pourrait être supprimé après un certain temps (il s'agit d'un site d'hébergement de fichiers gratuit que j'ai trouvé par une recherche rapide dans Google).
Si vous ne me faites pas confiance (ce qui est totalement correct) ou si le fichier a été supprimé, vous pouvez compiler le code vous-même, bien sûr. Vous devez ajouter "PowrProf.lib" aux dépendances supplémentaires de l'éditeur de liens.
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 veille prolongée. Je pourrais réveiller le PC instantanément (pas de messages de la carte mère, etc.) en appuyant sur n’importe quelle touche du clavier.la source
Vous pouvez lancer les options suspend ou hibernate à partir de la ligne de commande, comme indiqué ci-dessous et référencé dans cet article .
Si votre ordinateur est configuré pour autoriser l'hibernation, la commande ci-dessus lancera l'hibernation. Si la fonction de veille prolongée est désactivée, elle passera en état de veille. Comme d'autres utilisateurs ont répondu précédemment,
shutdown.exe /?
fournira de nombreuses options d'arrêt.la source
rundll32
ne doit pas être utilisé pour appelerSetSuspendState
car sa signature ne correspond pas à celle attendue parrundll32
. Voir: support.microsoft.com/en-us/kb/164787 et msdn.microsoft.com/en-us/library/windows/desktop/… Le premier paramètre obtient garbage au lieu de FALSE, il est donc toujours en veille prolongée au lieu d'aller à dormir.Vous devez d'abord désactiver Hibernate dans Windows, puis mettre l'ordinateur en état de veille . Utilisez les deux commandes suivantes:
et pour effectuer des actions inverses en mode Hibernation de l'ordinateur, utilisez les commandes ci-dessous:
la source
rundll32
n'est pas destiné à l'appelSetSuspendState
et ne doit pas être utilisé pour cela. Le premier paramètre obtient garbage au lieu de la valeur correcte. Donc, il hiberne toujours au lieu de dormir (si vous n’avez pas du tout désactivé l’hibernation).Voici un article sur l'utilisation de la CLI pour arrêter.
Microsoft fournit PsTools qui vous permet d’arrêter la CLI avec d’autres outils utiles. Vous pouvez l'obtenir ici .
la source
seul QUICK SLEEPER fonctionne pour moi (fonctionne sous Windows 7,8,10).
ps code source disponible ici .
la source
Si vous avez Python (avec pywin32) disponible, vous pouvez également appeler cette fonction SetSuspendState directement avec:
Cela peut facilement être mis dans un fichier de commandes ou un raccourci comme:
Donc, si vos fichiers .py ne sont pas associés à l'interprète, vous pouvez simplement cliquer deux fois sur le lien.
la source
La partie arrêt de la question est claire pour tout le monde.
shutdown.exe /?
affiche tous les choix d'arrêter / redémarrer / options avancées de démarrage / démarrage du firmware.Mais je vois tant de critiques sur la partie sommeil.
Tout le monde comprend qu'il
rundll32.exe
ne devrait pas être utilisé pour appeler des fonctions aléatoires et que cela fonctionne ici pour l'hibernation entièrement par hasard. Mais c’est la nature de Windows - une boîte noire dans laquelle les gens ont fouillé et trouvé des centaines de solutions de contournement pour faire un travail (crier aux dostips).Il y a tellement de solutions " appropriées " proposant des outils externes , mais je n'arrive pas à trouver un script de lot natif (hybride / pinvoke / peu importe) , même si cette question est restée active au fil des ans.
Alors voici mon simple power_sleep.bat :
Cela fonctionne même comme une grosse commande d'une ligne:
la source