无法在Win 7 Prof上以64位模式运行CMD

9
我已经完成了我的家庭作业,诚实地说,我尝试了我能想到的一切,但似乎每次打开CMD时,无论从哪里打开,都会出现32位版本。 我尝试过以下方法:
  1. Windows开始按钮 -> CMD -> 输入
  2. 输入'C:\ Windows \ System32 \ cmd.exe'
  3. 输入'C:\ Windows \ SysWOW64 \ cmd.exe'
在每种情况下,我都以管理员权限运行它,并关闭了UAC。 我可以确定它始终是32位的,因为在任何情况下,我都无法运行nbstat.exe(这是我从32位命令行中期望的)。
我使用Process Explorer并且两个版本都是csrss.exe的同一实例下的节点,这对我来说不太对。
有什么想法吗?
2个回答

8
检查进程是 64 位还是 32 位的最简单方法是转到任务管理器的进程选项卡,32 位 CMD 将显示为 cmd.exe *32
启动 64 位 CMD 的一种方法是使用“我的电脑”,然后双击 C:\Windows\System32\cmd.exe
启动 32 位 CMD 的一种方法是执行同样的步骤,但是双击 C:\Windows\SysWOW64\cmd.exe
稍微奇怪的观察结果是,如果从 32 位 CMD 启动 64 位 CMD,则它也将以 32 位模式启动。这可能是你总是看到 32 位版本的原因。资源管理器是一个 64 位进程,可以在 64 位模式下启动 CMD。

1
如果您双击C:\Windows\System32\cmd.exe,则会获得32位shell而不是64位。双击C:\Windows\SysWOW64\cmd.exe也是32位shell而不是64位。只需执行Python并查看消息即可。它始终在win32上说[..],这意味着Python正在运行的进程shell为win32。 - Echeban
@Echeban,那完全是错误的。Python说版本是win32,无论是哪个版本的Python或Windows,它只是表示任何版本的Windows,32位或64位。 - Amber Cahill

3
Windows生成的命令提示符版本与启动进程的位数匹配,通过Windows路径重定向实现。因此,从32位程序启动的命令提示符将是32位命令提示符,而从64位应用程序启动的命令提示符将是64位命令提示符 - Microsoft Technettechnet文章建议创建指向64位命令提示符可执行文件的符号链接以打败重定向。
阅读评论会发现有一种更简单的方法(不适用于Win XP),您可以使用虚拟文件夹C:\Windows\Sysnative获取系统工具的本机版本。
因此,要在64位Windows上始终获得64位命令提示符,请执行:
C:\Windows\sysnative\cmd.exe

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接