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

32位cmd.exe如何在Windows Server 2003 x64上启动64位cmd.exe?,windows,cmd,32bit-64bit,Windows,Cmd,32bit 64bit,这是一个后续行动 我试图避免使用过于复杂的构建过程来生成多个7-Zip EXE文件。在读取一些64位注册表项后,我只需要一个.cmd来启动Java进程。但是,要成功使用单个EXE文件,它需要32位 上面的问题找到了一个让Windows Server 2008检测32位cmd.exe并将其交换为64位的技巧。有没有办法在Windows Server 2003上执行此操作?有一个Windows修补程序,允许reg.exe以32位模式访问64位条目,但是我不能保证它在客户的服务器上,因此解决方法是不可

这是一个后续行动

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


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

要从32位cmd.exe启动64位cmd.exe,您必须能够访问
c:\Windows\System32
文件夹,而不必重定向到
c:\Windows\SysWow64
文件夹。在Win2008中,您可以通过访问
c:\Windows\Sysnative
path来实现这一点。不幸的是,在Win2003上需要热修复程序(请参阅)


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

例如,如何从32位安装程序检查64位注册表:C:\Windows\sysnative\reg.exe QUERY“HKLM\SOFTWARE\JavaSoft\JDK”/v CurrentVersion