Thing is though, I don't know if it IS native to XP or not... I do have it online here, but this setup is coming up on a year old now & over time I have forgotten EXACTLY what I extended the OS with in that folder!
Man, I can't even count the times anymore I've said that too! But, yes it is included in the default install of XP Pro. Probably is in home also, but I'm assuming that as well...
You're probably right...
That's one (the shutdown.exe program) program that I did not recall installing manually here into my %WinDir%\System32!
Again, I do pile a ton of them into there (mostly character mode/DOS console window ones, so they are immediately accessible, well almost immediately, following the rule of programs looking first (programs being the command processor in this case) inside their OWN folder first, then to %WinDir%\system32, then in the current directory the OS is in, & then the systemwide environmental variable %PATH% last).
NT based Os' by default, use different approaches for 32-bit versus 16-bit apps.
===============================================
1.) For 32-bit apps, Windows NT searches for implicitly loaded DLLs at:
a. The .exe file directory.
b. The current directory.
c. The %SystemRoot%\SYSTEM32 directory.
d. The %SystemRoot% directory.
e. The directories in your Path.
* BUT if a DLL is listed as a KnownDLLs at this hive key/folder location:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager
With a type of REG_SZ entry & Value Name of the DLL without the extension and a data value of the DLL with the .DLL extension, then the search order then becomes:
aa. The %SystemRoot%\SYSTEM32 directory.
bb. The .exe file directory.
cc. The current directory.
dd. The %SystemRoot% directory.
ee. The directories in your Path.
** KnownDLLs are mapped at boot time. Rernaming or moving during a session has no effect.
You can alter this behavior by including the 8.3 DLL name in the ExcludeFromKnownDlls entry, a REG_MULTI_SZ value, & one per line in that comma delimited listing.
(This makes NT believe that the DLL is not listed in KnownDLLs.)
-------------------------------------------------------------------------------------------------
2.) For 16-bit apps, Windows NT uses KnownDLLs for both implicitly and explicitly load DLLs. The value is at:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\WOW.
Here in that key, KnownDLLs is a REG_SZ value that lists 8.3 DOS formatted DLL names, & is separated by spaces.
Without a KnownDLLs entry, WOW searches:
a. The current directory.
b. The %SystemRoot% directory.
c. The %SystemRoot%\SYSTEM directory.
d. The %SystemRoot%\SYSTEM32 directory.
e. The .exe file directory.
f. The directories in your Path.
With a KnownDLLs entry, WOW only searches for them in the %SystemRoot%\SYSTEM32 directory.
-------------------------------------------------------------------------------------------------
3.) Windows 2000 Service Pack #3 (at least, & thus probably XP also) has instituted the SafeDllSearchMode Value Name, a REG_DWORD data type, at this hive key folder:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager.
A value of 0 keeps the current search order, & a value of 1 makes Win2k & programs search for DLL's & programs in this order:
a. Their own folder first
b. %SystemRoot%\System32
c. %SystemRoot%
e. The current directory
f. The folders in your %PATH% environment variable.
===============================================
*
APK
P.S.=> So, if you ever want to change that, that's pretty much all the data you need to alter system-wide search paths for DLL's &/or EXECUTEABLES... apk