Question Remotely Enable "Wake on Shutdown" NIC Advanced Properties


Feb 24, 2017
So im tasked with enabling WOL function for all 400+ pcs we have.

all win 7 hp
no domain
one large workgroup
wol has been tested to work but we have had to setup by hand and as a proof of concept that's ok but I don't wanna do that to all of them.

So the only thing that needs changing is the "wake on shutdown" in the advanced tab under network configuration on the wired adapter.
the only issue is all the power shell scripts I've found only change the 3 boxes on the power management tab. (those are already checked on all the pcs)

And to make things worse the command to get\set that info "Get-NetAdapterAdvancedProperty" works on ps version 4 and win 8 and up only. I have win 7 hp.

the first image is what I need changed
the second is what all of the wol setup info/scripts ive found change. (which is already set)

I can use any language besides PowerShell unless someone knows something I don't about editing the advanced properties.

Any help would be appreciated I don't want to use sneaker-net unless I have too.

I've found out that a few wmi classes will edit the boxes under the power management tab but can find nothing to edit the advanced tab.
I've also looked in WMIExplorer.exe and only found these 3.

Write-Host "Allow the computer to turn off this device....." -NoNewline
$NICPowerManage = Get-WmiObject MSPower_DeviceEnable -Namespace root\wmi | Where-Object { $_.instancename -match [regex]::escape($nic.PNPDeviceID) }

Write-Host "Allow this device to wake the computer....." -NoNewline
$NICPowerManage = Get-WmiObject MSPower_DeviceWakeEnable -Namespace root\wmi | Where-Object { $_.instancename -match [regex]::escape($nic.PNPDeviceID) }

Write-Host "Only allow a magic packet to wake the computer....." -NoNewline
$NICPowerManage = Get-WmiObject MSNdis_DeviceWakeOnMagicPacketOnly -Namespace root\wmi | Where-Object { $_.instancename -match [regex]::escape($nic.PNPDeviceID) }