Méthode Shutdown de la _ classe Win32 OperatingSystem

La méthode de classe WMI Shutdown décharge les programmes et les dll jusqu’à ce qu’il soit possible de mettre l’ordinateur hors connexion.

Cette rubrique utilise la syntaxe format MOF (MOF). Pour plus d’informations sur l’utilisation de cette méthode, consultez appel d’une méthode.

Syntaxe

uint32 Shutdown();

Paramètres

Cette méthode n’a aucun paramètre.

Valeur retournée

Retourne zéro (0) pour indiquer la réussite de l’opération. Tout autre nombre indique une erreur. Pour les codes d’erreur, consultez constantes d’erreur WMI ou WbemErrorEnum. Pour obtenir les valeurs de HRESULT générales, consultez codes d’erreur système.

Opération réussie (0)

Autre (1 4294967295)

Remarques

Les ordinateurs doivent parfois être supprimés du réseau, peut-être pour des raisons de maintenance planifiée, car l’ordinateur ne fonctionne pas correctement ou pour effectuer un processus de configuration. Par exemple, si un serveur DHCP remet des adresses IP erronées, vous pouvez arrêter l’ordinateur jusqu’à ce qu’un technicien de service puisse être distribué pour résoudre le problème. Si vous pensez qu’une violation de la sécurité s’est produite, vous devrez peut-être arrêter certains serveurs pour vous assurer qu’ils ne sont pas accessibles tant que le problème de sécurité n’a pas été résolu. Certaines opérations de configuration (telles que la modification d’un nom d’ordinateur) nécessitent le redémarrage de l’ordinateur pour que la modification prenne effet.

Cette méthode arrête immédiatement l’ordinateur, si possible. Le système arrête tous les processus en cours d’exécution, vide toutes les mémoires tampons de fichiers sur le disque, puis met le système sous tension. le processus appelant doit avoir le privilège SE _ SHUTDOWN _ NAME , comme décrit dans l’exemple suivant.

Set OpSysSet = GetObject("winmgmts:{(Shutdown)}//./root/cimv2").ExecQuery("select * from Win32_OperatingSystem where Primary=true")

Pour plus d’informations sur la définition d’un privilège, consultez exécution d’opérations privilégiées et exécution d’opérations privilégiées à l’aide de VBScript. Pour obtenir des options d’arrêt supplémentaires, telles qu’une fermeture de session ou un arrêt forcé, consultez la méthode Win32Shutdown .

Exemples

Le code VBScript suivant arrête l’ordinateur local.

Notes

Vous devez disposer du privilège d’arrêt pour appeler correctement la méthode Shutdown.

Set OpSysSet = GetObject("winmgmts:{(Shutdown)}//./root/cimv2").ExecQuery("select * from Win32_OperatingSystem where Primary=true")

for each OpSys in OpSysSet
 OpSys.Shutdown()
next

Le code perl suivant arrête l’ordinateur local.

Notes

Vous devez disposer du privilège d’arrêt pour appeler correctement la méthode Shutdown.

use strict;
use Win32::OLE;

my $OpSysSet;

eval { $OpSysSet = Win32::OLE->GetObject("winmgmts:{(Shutdown)}//./root/cimv2")->
      ExecQuery("SELECT * FROM Win32_OperatingSystem WHERE Primary=true"); };

if(!$@ && defined $OpSysSet)
{
 close (STDERR);
 foreach my $OpSys (in $OpSysSet)
 {
  my $RetVal = $OpSys->Shutdown();
  if (!defined $RetVal || $RetVal != 0)
  { 
   print Win32::OLE->LastError, "\n";
  }
 }
}
else
{
 print STDERR Win32::OLE->LastError, "\n";
}

Le code VBScript suivant arrête l’ordinateur distant spécifié. Renseignez _ _ nom du système distant avec le nom du système distant à arrêter.

Notes

Vous devez disposer du privilège RemoteShutdown pour appeler correctement la méthode Shutdown .

Set OpSysSet = GetObject("winmgmts:{(Debug,RemoteShutdown)}//REMOTE_SYSTEM_NAME/root/cimv2").ExecQuery("select * from Win32_OperatingSystem where Primary=true")

for each OpSys in OpSysSet
 OpSys.Shutdown()
next

Configuration requise

Condition requise Valeur
Client minimal pris en charge
Windows Vista
Serveur minimal pris en charge
Windows Server 2008
Espace de noms
\Cimv2 racine
MOF
CIMWin32. mof
DLL
CIMWin32.dll

Voir aussi

Classes du système d’exploitation

_OperatingSystem Win32

Tâches WMI : gestion des postes de travail

Exécution d’opérations privilégiées à l’aide de VBScript