Why does "start winword" work but just "winword" doesn't?

Assume Microsoft Office is installed. Consider the following batch file:

REM the following line successfully launches Microsoft Word
start winword

REM none of the following commands work to launch Microsoft Word
winword
winword.exe
winword.com
winword.bat
winword.cmd
winword.vbs
winword.vbe
winword.js
winword.jse
winword.wsf
winword.wsh
winword.msc

What is it about the "start" instruction that allows the launching of Microsoft Word using the name "winword"?

My curiosity stems from my interest in the mechanics of the "start" verb - I don't need suggestions on other ways to start Microsoft Office. Please don't suggest that I add the Microsoft Office directory to my PATH environment variable - I know what that would do.

How is start finding "winword" when cmd cannot find it directly?


The App Paths key is evaluated just after PATH if I'm not mistaken:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\Winword.exe]
@="C:\\PROGRA~2\\MICROS~1\\Office14\\WINWORD.EXE"
"Path"="C:\\Program Files (x86)\\Microsoft Office\\Office14\\"
"useURL"="1"
"SaveURL"="1"

That's how both the Start command and the Run dialog recognise Winword.exe as a valid alias. For more, read How is it possible to run Wordpad by just typing its name even though it isn't on the PATH? by Raymond Chen.


It's just not the start, but also the "Run dialog". The secret?

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths

Run dialog and start checks here too. The command line doesn't.