Inicio Foros Sistemas operativos Windows Ejecutar .exe con if en función de x32 o x64 en bat [RESUELTO]

  • Este debate tiene 2 respuestas, 2 mensajes y ha sido actualizado por última vez el hace 2 meses por Varios.
Viendo 3 entradas - de la 1 a la 3 (de un total de 3)
  • Autor
    Entradas
  • #48250
    Varios
    Moderador

    Hola, quisiera hacer un fichero de proceso por lotes .bat en Windows, un script, que diferencie si un equipo es de arquitectura de 32 bits o de 64 bits. En función de si es x32 o x64 quiero ejecutar un .exe u otro ¿esto se puede hacer en un .bat?

    Por ejemplo, quiero ejecutar esto si el procesador o Sistema operativo es de 64 bits:

    msiexec /i \\proyectoa.local\Startup\Software\Autofirma\AutoFirma_32_v1_7_2_installer.msi /quiet FIREFOX_SECURITY_ROOTS=»true»

    Y cuando sea de 32 bits ejecutar:

    msiexec /i \\proyectoa.local\Startup\Software\Autofirma\AutoFirma_64_v1_7_2_installer.msi /quiet FIREFOX_SECURITY_ROOTS=»true»

    #48251
    alonsojpd
    Superadministrador

    Puedes usar la variable de entorno PROCESSOR_ARCHITECTURE, para obtener su valor en un .bat se puede usar: %PROCESSOR_ARCHITECTURE%.

    Un ejemplo de uso en un if, en para tu caso:

    #48252
    Varios
    Moderador

    Estupendo, solucionado, me funciona perfecto usando PROCESSOR_ARCHITECTURE.

    Muchas gracias.

Viendo 3 entradas - de la 1 a la 3 (de un total de 3)
  • Debes estar registrado para responder a este debate.