I have scripted NICSavePower.bat to enable, or disable, power management on a local, or remote, Windows XP computer's network adapter.

The syntax for using NICSavePower.bat is:

NICSavePower ComputerName NIC On|Off

Where ComputerName is the NetBIOS name of the local or remote computer, NIC is any unique portions of the network adapter's driver description, without any special command control characters, like ( ) &, and On|Off is On to enable power management, and Off will disable power management.


To disable power management on the gigabit ethernet adapter of a local computer (JSI009), whose network adapter's driver description's are Intel(R) PRO/1000 MTW Network Connection and Intel(R) PRO/Wireless LAN 2100 3A Mini PCI Adapter, you could use any of the following:
<b>NICSavePower %ComputerName% 1000 off
NICSavePower %ComputerName% "NTW Network" off
NICSavePower %ComputerName% "ntw network" off
NICSavePower  jsi009 "1000" off
NICSavePower  jsi009 "0 M" off</b>
NICSavePower.bat contains:
@echo off
if /i \{%3\}<h1><a name="_on_goto_start_if_i_3_">\{on\} goto start
if /i \{%3\}</a></h1>\{off\} goto start
@echo Syntax: NICSavePower ComputerName NIC On^|Off
goto :EOF
set computer=%1
set NIC=%2
set NIC="%NIC:"=%"
set ONOFF=%3
set data=56
if /i "%ONOFF%" EQU "on" set data=48
set qry=reg query "\\%computer%\HKLM\SYSTEM\CurrentControlSet\Control\Class\\{4D36E972-E325-11CE-BFC1-08002bE10318\}" /s
for /f "Tokens=*" %%p in ('%qry%') do (
 set line=%%p
 set line=!line:^&=!
 set line=!line:^)=!
 set line=!line:^(=!
 set line=!line:^=!
 call :parse
goto :EOF
if /i "%line:~0,5%" NEQ "HKEY_" goto parse1
set key=%line%
goto :EOF
call :parse2>nul 2>&1
goto :EOF
for /f "Tokens=*" %%f in ('@echo %line%^|findstr /i /c:%NIC% ^|findstr /i /c:"DriverDesc"') do (
  if defined key reg add "\\%computer%\%key%" /v PnPCapabilities /t REG_DWORD /d %data% /f&set key=