Nas edições x64 do Windows 8/7 / Vista, o conteúdo da pasta C: \ Windows \ System32 depende da bitness do aplicativo.
Para aplicativos de 64 bits (como Prompt de comando do Windows, cmd.exe
), não há redirecionamento de sistema de arquivos:% C:\Windows\System32
(no software) - > C:\Windows\System32
(no disco).
Portanto, a pasta C: \ Windows \ System32 contém arquivos DLL e EXE de 64 bits, do ponto de vista do aplicativo de 64 bits.
Para aplicativos de 32 bits (como bash.exe
do Cygwin) que são executados pelo subsistema WoW64 no Windows x64, há dois redirecionamentos no sistema de arquivos:
C:\Windows\System32
(no software) - > C:\Windows\SysWOW64
(no disco).
C:\Windows\Sysnative
(no software) - > C:\Windows\System32
(no disco).
Portanto, a pasta C: \ Windows \ System32 contém arquivos DLL e EXE de 32 bits, do ponto de vista do aplicativo de 32 bits.
Se você deseja acessar aplicativos de 64 bits e arquivos DLL (como java*.exe
) de aplicativos de 32 bits (como bash.exe
do Cygwin), é necessário usar C:\Windows\Sysnative
path ou /cygdrive/c/Windows/Sysnative
in Notação Cygwin.
(esta é uma resposta atualizada e estendida)