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:
NICSavePower %ComputerName% 1000 off                              NICSavePower %ComputerName% "NTW Network" off                              NICSavePower %ComputerName% "ntw network" off                              NICSavePower  jsi009 "1000" off                              NICSavePower  jsi009 "0 M" off
NICSavePower.bat contains:
@echo off                              if /i \{%3\}

\{on\} goto start if /i \{%3\}

\{off\} goto start @echo Syntax: NICSavePower ComputerName NIC On^|Off goto :EOF :start setlocal ENABLEDELAYEDEXPANSION 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 ) endlocal goto :EOF :parse if /i "%line:~0,5%" NEQ "HKEY_" goto parse1 set key=%line% set key=%key:HKEY_LOCAL_MACHINE=HKLM% goto :EOF :parse1 call :parse2>nul 2>&1 goto :EOF :parse2 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= )