I have scripted NoWelcome.bat to hide user names on the Windows XP Welcome screen.

The syntax for using NoWelcome.bat is:

NoWelcome User1 \[User2 . . . UserN\]

Where only the first user name is required.

NoWelcome.bat contains:

@echo off
setlocal
if \{%1\}<h1><a name="_goto_syntax_echo_REGEDIT4_echo_echo_HKEY_LOCAL_MACHINE_SOFTWARE_Microsoft_Windows_NT_CurrentVersion_Winlogon_SpecialAccounts_UserList_gt_TEMP_NoWelcome_tmp_loop_if_1_">\{\} goto syntax
(
@echo REGEDIT4
@echo.
@echo \[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\SpecialAccounts\UserList\]
)>"%TEMP%\NoWelcome.tmp"
:loop
if \{%1\}</a></h1>\{\} goto finish
set user=%1
shift
set user=%user:"=%
@echo "%user%"=dword:00000000>>"%TEMP%\NoWelcome.tmp"
goto :loop
:finish
@echo.>>"%TEMP%\NoWelcome.tmp"
@echo.>>"%TEMP%\NoWelcome.tmp"
regedit /s "%TEMP%\NoWelcome.tmp"
del /q "%TEMP%\NoWelcome.tmp"
endlocal
goto :EOF
:syntax
@echo Syntax: NoWelcome User1 \[User2 . . . UserN\]
endlocal