On one of our production server 2008 boxes, I cannot run executables from a CMD prompt without supplying the full filename, including the '.exe' extension. For example, when running "java" produced the usual "is not recognized as an internal or external command" message, I assumed I had borked the path and/or java_home variables. However, even navigating to the %java_home%\bin directory and typing "java" produced the same error. If I type "java.exe" instead, all works perfectly.
The problem does not only affect java.exe. Even Microsoft executables suffer the same problem -- ping fails, ping.exe works; ipconfig fails, ipconfig.exe works; manually created batch file 'test' only works when invoked explicitly as 'test.bat'.
Any bright ideas?
[edit] Awesome! The issue was a bad value in pathext -- someone had inadvertantly edited the PATHEXT system variable (prepending %java_home%\bin), when that edit should have been on the PATH variable.
Thanks!
PATHEXT
System Variable. By default they are:.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC