Невозможно запустить CMD в 64-битном режиме на Win 7 Prof

Я сделал свою домашнюю работу, честно, и перепробовал все, что мог придумать, но кажется, что каждый раз, когда я открываю 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, который мне не подходит.

Какие-нибудь мысли?

1 ответ

Самый простой способ увидеть, запускает ли процесс 64- или 32-битный, - это перейти на вкладку процесса диспетчера задач, 32-битный CMD будет отображаться как cmd.exe *32,

Один из способов запустить 64-битную CMD - просто использовать "Мой компьютер" и дважды щелкнуть C:\Windows\System32\cmd.exe,

Один из способов запуска 32-разрядного CMD - сделать то же самое, но дважды щелкнув C:\Windows\SysWOW64\cmd.exe,

Слегка странное наблюдение; кажется, что если вы запускаете 64-битную CMD из 32-битной, она также запускается как 32-битная. Это может быть причиной того, что 32-битная версия появляется постоянно. Explorer является 64-битным процессом и может запускать CMD в 64-битном режиме.

Версия командной строки, которую запускает Windows, соответствует разрядности процесса запуска с помощью волшебства перенаправления пути Windows. Следовательно, командная строка, запускаемая из 32-разрядной программы, будет 32-разрядной командной строкой, а запускаемая из 64-разрядного приложения - 64-разрядной командной строкой - Microsoft Technet.

В статье technet предлагается создать символическую ссылку на 64-разрядную версию исполняемого файла командной строки, чтобы предотвратить перенаправление.

Чтение комментариев показывает, что существует более простой метод (не Win XP), вы можете использовать виртуальную папку C:\Windows\Sysnative для получения собственных версий системных инструментов.

Поэтому, чтобы всегда получать 64-битную командную строку в 64-битных окнах, выполните:

C:\Windows\sysnative\cmd.exe
Другие вопросы по тегам