Как перезагрузить компьютер из Powershell


 

Есть несколько способов:

1. Использовать командлет Stop-Computer  (ограниченные возможности)

2. Использовать метод Win32Shutdown из класса WMI Win32_OperatingSystem

(Get-WmiObject -Class Win32_OperatingSystem –ComputerName .).InvokeMethod(«Win32Shutdown»,0)

(Вместо . можно задать имя удаленного компьютера)

3. Использовать вызов утилиты shutdown.exe

4. Использовать вызов WinAPI InitiateSystemShutdown

$global:Win2kClass = Add-Type -Namespace NSadvapi32 -Name Utils -MemberDefinition @»

// http://msdn.microsoft.com/en-us/library/windows/desktop/aa376873(v=vs.85).aspx

[DllImport(«advapi32.dll», SetLastError = true)]

public static extern bool InitiateSystemShutdown(string lpMachineName, string lpMessage, int dwTimeout, bool bForceAppsClosed, bool bRebootAfterShutdown);

«@ -passthru

Далее можно сделать вызов [NSadvapi32.Utils]::InitiateSystemShutdown или $Win2kClass::InitiateSystemShutdown с нужными параметрами.

Этот способ сравним с вызовом утилиты shutdown.exe по своим возможностям

Реклама

Добавить комментарий

Заполните поля или щелкните по значку, чтобы оставить свой комментарий:

Логотип WordPress.com

Для комментария используется ваша учётная запись WordPress.com. Выход / Изменить )

Фотография Twitter

Для комментария используется ваша учётная запись Twitter. Выход / Изменить )

Фотография Facebook

Для комментария используется ваша учётная запись Facebook. Выход / Изменить )

Google+ photo

Для комментария используется ваша учётная запись Google+. Выход / Изменить )

Connecting to %s

%d такие блоггеры, как: