2011-12-10 18 views
7

Esto es una continuación de 7-Zip execution permissions on Windows Server 2008 64-bit.¿Cómo puede un cmd.exe de 32 bits iniciar un cmd.exe de 64 bits en Windows Server 2003 x64?

Estoy tratando de evitar tener un proceso de compilación demasiado complicado para hacer múltiples archivos 7-Zip EXE. Solo necesito un .cmd para iniciar mi proceso de Java después de leer algunas entradas de registro de 64 bits. Sin embargo, para tener éxito con un único archivo EXE, debe ser de 32 bits.

La pregunta anterior encontró un truco para hacer que Windows Server 2008 detecte un cmd.exe de 32 bits y lo cambie a 64 bits. ¿Hay alguna manera de hacer esto en Windows Server 2003? Hay una revisión de Windows que permite que reg.exe acceda a las entradas de 64 bits en modo de 32 bits, pero no puedo asegurarme de que esté en el servidor del cliente, por lo que la solución es inútil.

Respuesta

13

Para iniciar cmd.exe de 64 bits desde cmd.exe de 32 bits, debe poder acceder a la carpeta c:\Windows\System32 sin tener que ser redirigido a la carpeta c:\Windows\SysWow64. En Win2008 puede lograrlo accediendo a la ruta c:\Windows\Sysnative. Desafortunadamente en Win2003 se requiere una revisión (ver http://support.microsoft.com/kb/942589).

Hay una solución temporal: puede crear un punto de unión NTFS que dirija a la carpeta c:\Windows\System32 y usar la ruta a ese punto de unión en lugar de c:\Windows\System32. Utilizando System Internals 'junction.exe pude crear un punto de unión de cmd.exe de 32 bits y ejecutar cmd.exe de 64 bits.

Cuestiones relacionadas