32位cmd.exe如何在Windows Server 2003 x64上启动64位cmd.exe?

Min*_* Ex 7 windows cmd 32bit-64bit

这是对Windows Server 2008 64位上的7-Zip执行权限的跟进.

我试图避免过于复杂的构建过程来制作多个7-Zip EXE文件.在阅读一些64位注册表项后,我只需要一个.cmd来启动我的Java进程.但是,要使用单个EXE文件成功,它需要为32位.

上面的问题找到了让Windows Server 2008检测32位cmd.exe并将其交换为64位的技巧.有没有办法在Windows Server 2003上执行此操作?有一个Windows修补程序,允许reg.exe以32位模式访问64位条目,但我不能确定这是在客户的服务器上,所以解决方法是不行.

MBu*_*MBu 14

要从32位cmd.exe启动64位cmd.exe,您必须能够访问c:\Windows\System32文件夹而不必重定向到c:\Windows\SysWow64文件夹.在Win2008中,您可以通过访问c:\Windows\Sysnative路径来实现此目的.不幸的是,在Win2003上需要一个修补程序(请参阅http://support.microsoft.com/kb/942589).

有一种解决方法 - 您可以创建一个NTFS交接点,该交汇点指向c:\Windows\System32文件夹并使用该交汇点的路径而不是c:\Windows\System32.使用System Internals的junction.exe我设法从32位cmd.exe创建这样的联结点并启动64位cmd.exe.