服务器 2003 SP2 64 位
验证我的路径设置是否正确,因为我可以在“system32”文件夹中运行其他可执行文件而不会出现问题。
如果我 cd 到 "c:\windows\system32\" 文件夹,并尝试运行 "shutdown /?" 我得到“关机未被识别为有效......”你知道 - 当你输入一个不存在的命令时你得到的消息。
在“system32”文件夹中执行“dir *.exe”也不会返回“shutdown.exe”作为结果之一。但是 - 如果我通过 Windows 资源管理器 - 就是这样!我可以看到shutdown.exe。另外,如果我转到“开始-> 运行”并输入“关机/?”,它工作正常。
所以,在 GUI 中工作,而不是在命令行上。很奇怪。
这是在“system32”文件夹上运行时“dir *.exe”最后一部分的摘录。请注意缺少常用的可执行文件,例如“shutdown.exe”和“tsadmin.exe”
02/18/2007 07:00 AM 24,064 route.exe
02/18/2007 07:00 AM 29,184 routemon.exe
02/18/2007 07:00 AM 14,848 rsh.exe
02/18/2007 07:00 AM 67,072 rsopprov.exe
02/18/2007 07:00 AM 77,824 rtcshare.exe
02/18/2007 07:00 AM 18,432 runas.exe
02/18/2007 07:00 AM 34,816 rundll32.exe
02/18/2007 07:00 AM 18,432 runonce.exe
02/18/2007 07:00 AM 13,312 savedump.exe
03/19/2009 07:51 PM 49,152 sc.exe
02/18/2007 07:00 AM 90,112 scardsvr.exe
02/18/2007 07:00 AM 152,064 schtasks.exe
02/18/2007 07:00 AM 16,384 schupgr.exe
02/18/2007 07:00 AM 31,232 sdbinst.exe
02/18/2007 07:00 AM 36,352 secedit.exe
02/18/2007 07:00 AM 32,768 sethc.exe
06/28/2006 12:12 AM 31,232 SetLACState.exe
02/18/2007 07:00 AM 41,472 setup.exe
02/18/2007 07:00 AM 25,088 setup16.exe
02/18/2007 07:00 AM 20,480 setupn.exe
02/18/2007 07:00 AM 60,416 setx.exe
02/18/2007 07:00 AM 10,752 sfc.exe
02/18/2007 07:00 AM 76,288 sfmprint.exe
02/18/2007 07:00 AM 11,776 sfmpsexe.exe
02/18/2007 07:00 AM 65,024 sfmsvc.exe
02/18/2007 07:00 AM 38,400 shmgrate.exe
02/18/2007 07:00 AM 71,168 sigverif.exe
02/18/2007 07:00 AM 26,112 skeys.exe
02/18/2007 07:00 AM 96,256 smlogsvc.exe
02/18/2007 07:00 AM 53,760 smss.exe
02/18/2007 07:00 AM 40,960 snmp.exe
02/18/2007 07:00 AM 25,088 sort.exe
02/18/2007 07:00 AM 9,728 sprestrt.exe
02/18/2007 07:00 AM 10,240 subst.exe
02/18/2007 07:00 AM 14,848 svchost.exe
02/18/2007 07:00 AM 54,272 syncapp.exe
02/18/2007 07:00 AM 18,896 sysedit.exe
02/18/2007 07:00 AM 29,696 syskey.exe
02/18/2007 07:00 AM 107,520 sysocmgr.exe
02/18/2007 07:00 AM 79,360 systeminfo.exe
02/18/2007 07:00 AM 3,072 systray.exe
02/18/2007 07:00 AM 58,880 takeown.exe
02/18/2007 07:00 AM 32,768 tapicfg.exe
02/18/2007 07:00 AM 84,480 taskkill.exe
02/18/2007 07:00 AM 87,552 tasklist.exe
02/18/2007 07:00 AM 168,960 taskmgr.exe
02/18/2007 07:00 AM 13,824 tcmsetup.exe
02/18/2007 07:00 AM 21,504 tcpsvcs.exe
02/18/2007 07:00 AM 28,672 timeout.exe
02/18/2007 07:00 AM 419,328 tracerpt.exe
02/18/2007 07:00 AM 12,800 tracert.exe
02/18/2007 07:00 AM 26,624 tsecimp.exe
02/18/2007 07:00 AM 37,376 typeperf.exe
10/24/2008 04:12 PM 64,000 tzchange.exe
02/18/2007 07:00 AM 5,632 unlodctr.exe
02/18/2007 07:00 AM 321,024 upg351db.exe
02/18/2007 07:00 AM 16,896 ups.exe
02/18/2007 07:00 AM 4,096 user.exe
02/18/2007 07:00 AM 26,112 userinit.exe
02/18/2007 07:00 AM 49,152 utilman.exe
02/18/2007 07:00 AM 47,104 uwdf.exe
02/18/2007 07:00 AM 29,184 verclsid.exe
02/18/2007 07:00 AM 112,640 verifier.exe
02/18/2007 07:00 AM 1,129 vwipxspx.exe
02/18/2007 07:00 AM 55,296 w32tm.exe
02/18/2007 07:00 AM 38,400 waitfor.exe
02/18/2007 07:00 AM 39,424 wdfmgr.exe
02/18/2007 07:00 AM 62,464 wextract.exe
02/18/2007 07:00 AM 38,400 where.exe
02/18/2007 07:00 AM 48,640 whoami.exe
02/18/2007 07:00 AM 36,864 winchat.exe
08/13/2007 06:45 PM 206,336 WinFXDocObj.exe
02/18/2007 07:00 AM 8,704 winhlp32.exe
02/18/2007 07:00 AM 12,800 winmsd.exe
02/18/2007 07:00 AM 2,112 winspool.exe
02/18/2007 07:00 AM 6,656 winver.exe
08/21/2002 05:13 AM 189,952 WISPTIS.EXE
02/18/2007 07:00 AM 67,072 wlbs.exe
02/18/2007 07:00 AM 10,560 wowexec.exe
02/18/2007 07:00 AM 10,752 wowreg32.exe
02/18/2007 07:00 AM 31,232 wpnpinst.exe
02/18/2007 07:00 AM 5,632 write.exe
02/18/2007 07:00 AM 114,688 wscript.exe
02/18/2007 07:00 AM 30,720 xcopy.exe
这是因为您在 64 位 Windows 2003 上运行。基本上 - cmd.exe 在 32 位模式下运行,并且只有 64 位版本的 shutdown.exe(和一些其他可执行文件)可用。由于 Windows 在幕后的工作方式,它不允许您从 32 位进程查看/运行 64 位可执行文件。Explorer 是 64 位的,因此可以看到它们。
有一个可用的修补程序:http:
//support.microsoft.com/ ?scid=kb;en-us;942589
此外,这是一篇非常好的博客文章,详细解释了该问题,以及一些替代解决方法(尽管他们建议使用修补程序):http:
//blogs.sepago.de/nicholas/2008/03/13/jailed-32 -bit-processes-on-windows-x64/
“在 64 位版本的 Windows Server 2003 或 Windows XP 中,%WinDir%\System32 文件夹为 64 位应用程序保留。当 32 位应用程序尝试访问 System32 文件夹时,访问被重定向到以下文件夹:%WinDir%\SysWOW64"
因此,您将在命令提示符下看到 c:\windows\SysWOW64 中的文件