Я установил восстановление при отключении переменного тока / мощности из меню Windows Bios при запуске компьютера для нескольких компьютеров с Windows.
Как кто-то может подтвердить (удаленно), что я это сделал, есть ли способ сделать это с удаленного рабочего стола?
Бонусные баллы, если вы знаете, как изменить его удаленно (если это возможно).
Что я наделал:
wmic bios get /format:list
но не увидел ничего подходящего.Нашел WakeUpType
собственность Win32_ComputerSystem
класс
WakeUpType
Тип данных:
uint16
Тип доступа:Read-only
Квалификаторы: MappingStrings ("SMBIOS|Type 1|System Information|Wake-up Type
")Событие, вызывающее включение системы.
Это значение исходит из Тип пробуждения член Системная информация структура в SMBIOS Информация.
- Reserved (0) - Other (1) - Unknown (2) - APM Timer (3) - Modem Ring (4) - LAN Remote (5) - Power Switch (6) - PCI PME# (7) - AC Power Restored (8)
Читать Справочная спецификация системного управления BIOS (SMBIOS) также.
Следующий сценарий требует следующих настроек для удовлетворения (ваших) конкретных условий эксплуатации:
$computers
массив (например, прочитать его из файла);$WakeUpType = Get-WmiObject
(например, добавить -Authentication
или -Credential
параметры, см. Get-Help 'Get-WmiObject' -ShowWindow
). $WakeUpTypes = DATA {ConvertFrom-StringData -StringData @’
0 = Reserved (0)
1 = Other (1)
2 = Unknown (2)
3 = APM Timer (3)
4 = Modem Ring (4)
5 = LAN Remote (5)
6 = Power Switch (6)
7 = PCI PME# (7)
8 = AC Power Restored (8)
na = ? unreachable ? (N/A)
‘@}
$computers = ".", "$env:COMPUTERNAME", ### I *know* that these are the same
"bububu" ### and this is fake name for debugging
$namespace = "ROOT\CIMV2"
$classname = "Win32_ComputerSystem"
ForEach ( $computer in $computers ) {
Try {
$WakeUpType = Get-WmiObject `
-Class $classname -ComputerName $computer -Namespace $namespace `
-ErrorAction SilentlyContinue
$WakeUpName = $WakeUpTypes.Item("$($WakeUpType.WakeUpType)")
} Catch {
$WakeUpName = $WakeUpTypes.Item("na")
}
If ( $WakeUpName -eq $null ) { $WakeUpName = "Undefined as yet ($WakeUpType)" }
"{0,-20} {1}" -f $computer, $WakeUpName
}