Aquí es un par de funciones de VBScript en base a la respuesta muy concisa por @Bruno:
Function Is32BitOS()
If GetObject("winmgmts:root\cimv2:Win32_Processor='cpu0'").AddressWidth _
= 32 Then
Is32BitOS = True
Else
Is32BitOS = False
End If
End Function
Function Is64BitOS()
If GetObject("winmgmts:root\cimv2:Win32_Processor='cpu0'").AddressWidth _
= 64 Then
Is64BitOS = True
Else
Is64BitOS = False
End If
End Function
ACTUALIZACIÓN: por el consejo de @ Ekkehard.Horner , estas dos funciones se pueden escribir más sucintamente using single-line syntax de la siguiente manera:
Function Is32BitOS() : Is32BitOS = (GetObject("winmgmts:root\cimv2:Win32_Processor='cpu0'").AddressWidth = 32) : End Function
Function Is64BitOS() : Is64BitOS = (GetObject("winmgmts:root\cimv2:Win32_Processor='cpu0'").AddressWidth = 64) : End Function
(Tenga en cuenta que los paréntesis que rodean la condición GetObject(...) = 32
no son necesarios, pero creo que añaden claridad con respecto a la precedencia del operador. También tenga en cuenta que la sintaxis de una sola línea utilizado en las implementaciones revisadas evita el uso de la construcción If/Then
)
ACTUALIZACIÓN 2: por la realimentación adicional de @ Ekkehard.Horner, algunos pueden encontrar que estas implementaciones más revisadas ofrecen tanto concisión como legibilidad mejorada:
Function Is32BitOS()
Const Path = "winmgmts:root\cimv2:Win32_Processor='cpu0'"
Is32BitOS = (GetObject(Path).AddressWidth = 32)
End Function
Function Is64BitOS()
Const Path = "winmgmts:root\cimv2:Win32_Processor='cpu0'"
Is64BitOS = (GetObject(Path).AddressWidth = 64)
End Function
No, creo que quiere saber si está ejecutando un sistema operativo de 32 o 64 bits. Por lo tanto, un duplicado de http://stackoverflow.com/questions/191873 – Treb
posible duplicado de [Determinación de 64 bits frente a Windows de 32 bits] (http://stackoverflow.com/questions/191873/determining-64-bit- vs-32-bit-windows) – Treb
@Treb: No hay respuesta de VBScript. Pensándolo bien, es probable que sea un duplicado de http://stackoverflow.com/questions/556283/how-do-i-check-if-wscript-cscript-runs-on-x64-host-os – Helen