How to Open and Run 32-bit Command Prompt in 64-bit (x64) Windows

64-bit or x64 version of Windows operating system such as Windows Server 2003, Windows XP Professional x64 Edition, Windows Vista and Windows Server 2008 uses the Microsoft Windows-32-on-Windows-64 (WOW64) subsystem layer to run 32-bit programs, binaries or drivers without modifications, change or transition to 64-bit based binaries, as the 64-bit OS is optimized to run native 64-bit programs and does not provide support for 16-bit binaries or 32-bit drivers.

To reduce compatibility issue and prevent a 32-bit program from accidentally accessing data from 64-bit application, WOW64 subsystem isolates 32-bit binaries from 64-bit binaries by redirecting registry calls and some file system calls. Other than separate registry hive for WOW64 redirected 32-bit values, %systemroot%\System32 and Program Files folder is designated as 64-bit DLLs only too, and all access or I/O of 32-bit binaries been redirected from %windir%\System32 folder to the %windir%\SysWOW64 folder, and from Program Files to Program Files (x86) directory.

The command prompt (cmd.exe) is also affected by File System Redirection feature, where command line commands or .bat and .cmd batch script may not be able to access, install, change, modify, delete or write to “Program Files” or “%windir%\System32″ folder. The WOW64 subsystem redirects and installs 32-bit programs in the “Program Files (x86)” and “%systemroot%\SysWOW64″ folder.

To access the correct folder, programmer or developer must change the command-line script, or using Sysnative virtual directory alias to access %windir%\System32 instead of %windir%\SysWOW64. When this is not possible, or when have to access original native Program Files folder, user can type the command-line script at a 32-bit command prompt. The 32-bit command prompt automatically redirects file system calls to the correct 32-bit directory.

To start and open a 32-bit command prompt, follow these steps:

  1. Click Start.
  2. Type %windir%\SysWoW64\cmd.exe in Start Search box.

    Alternatively, press Win + R keys (or type Run in Start Search) to open Run dialog, and type %windir%\SysWoW64\cmd.exe.

  3. Press Enter.

32-bit Command Prompt

In 32-bit command prompt, the %programfiles% path variable will point to Program Files (x86) folder which stores all 32-bit binaries.



4 Responses to “How to Open and Run 32-bit Command Prompt in 64-bit (x64) Windows”

  1. Nicholas Dille
    May 23rd, 2008 14:29
    1

    As you described in the article, the original %SystemRoot%\System32 is not accessible to 32-bit processes. Unfortunately, there are several tools existing uniquely as 64-bit binaries (e.g. logogg.exe and tsshutdn.exe). In one of my articles, I describe two techniques circumventing the limitation of launching 64-bit system tools from 32-bit processes: http://blogs.sepago.de/nicholas/2008/03/13/jailed-32-bit-processes-on-windows-x64/

    Enjoy,
    Nicholas.

  2. ian sebryk
    August 21st, 2008 11:37
    2

    i tried using your advice to try and get some 32bit apps to run a bit better on my 64bit box. problem is, now i get weird errors from some key software. i don’t know how to undo the change… which may serve me right for swimming in deep waters…

    throw me a raft, ya?

    here’s a sample error that showed up mid-execution after i’d run the %windir%\SysWoW64\cmd.exe command:

    Error: can’t define “ProgramFiles(x86)”: name refers to an element in an array
    while evaluating script: namespace eval :: {source {C:/Program Files (x86)/[directory tree]/RMSExpression.tcl}}

  3. Nicholas Dille
    August 21st, 2008 14:34
    3

    I may be dipping the raft but I reckon the TCL interpreter does not allow brackets in the path to a file which it is about to source.

    Does it help to move the installation directory to a location outside of “c:\Program Files (x86)”, e.g. “c:\progs”?

    Hope that helps,
    Nicholas.

  4. ian sebryk
    August 21st, 2008 17:42
    4

    i thought that might be a solution, but before i tried it, i tried just running it from a normal shell, instead of through the batchfile that launched the app in question, and it worked fine. so much weirdness.

    the batchfile no longer works, but direct command line does. how weird is that?!

    i’ll also try a different path without brackets to see if that re-enables my batchfile’s ability to launch. reaaaly need the batchfile to work again… :)

    thank Nicholas. i’ll keep you posted.

    WR!

Leave a Reply

You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Subscribe without commenting


Custom Search

Incoming Search Terms for the Article

32-bit browser running on a 64-bit operating system - how to open run command - how to run a 32 bit browser on a 64 bit system - 64 bit command prompt - run 32 bit programs on 64 bit - open all 32 - how do i run a 32 bit browser - all - run 32 bit programs on vista 64 - cmd x64 - how to open run - how to run a 32 bit browser - 32 bit browser on 64 bit system - run wow64 - 32 bit command prompt - to open run - how to run a 32-bit browser on a 64-bit operating system - running 32-bit programs on vista 64-bit - run as 32 bit - how to run 32 bit programs on 64 bit - how to run 32 bit on 64 bit - vista 32-bit command prompt - run 32 bit programs in vista 64 - how to run 32 bit programs on 64 bit vista - run 32 bit programs in 64 bit vista - running 32 bit programs on vista - 64bit command prompt - running 32 bit on 64 bit computer - vista run 32 bit - cmd 32bit - how to run 32 bit programs on 64 bit windows - 64-bit cmd.exe - 64 bit command line - running bat files on winxp 64 - running 32 bit programs on vista 64 - How to run 32 Bit application in vista - cmd 32 bit - 64 bit cmd - error system 32/cmd.exe access denied - vista 64 bit command prompt - run 32 bit browser - CANNOT OPEN EXE VISTA 64 BIT - How to run 32 bit application from 64 bit Windows server - how to open run window - 32 bit cmd.exe - command to open run - how to open a 32-bit browser - how to run a 32 bit program on a 64 bit system - x64 command prompt - run as 32bit -