Page 1 of 1
Como saber si procesador es de 32 o 64 bits
Posted: Wed Apr 04, 2012 1:41 pm
by fespinoza
Eso; quisiera conocer si existe alguna forma de conocer vía programación (función o alguna otra forma), cual es el tipo de procesador en el cual se esta ejecutando la aplicación: 16, 32 o 64 bits.
Saludos
Fernando Espinoza
Re: Como saber si procesador es de 32 o 64 bits
Posted: Wed Apr 04, 2012 2:06 pm
by Antonio Linares
Fernando,
Prueba este ejemplo:
Code: Select all
#include "FiveWin.ch"
function Main()
MsgInfo( SizeofLongLong() )
return nil
#pragma BEGINDUMP
#include <hbapi.h>
HB_FUNC( SIZEOFLONGLONG )
{
hb_retnl( sizeof( HB_LONGLONG ) * 8 );
}
#pragma ENDDUMP
Re: Como saber si procesador es de 32 o 64 bits
Posted: Wed Apr 04, 2012 2:17 pm
by Antonio Linares
Este es el sistema correcto
MsgInfo( GetEnv( "PROCESSOR_ARCHITECTURE" ) )
En 32 bits devuelve "x86"
En 64 bits devuelve "AMD64"
Re: Como saber si procesador es de 32 o 64 bits
Posted: Wed Oct 09, 2013 4:03 pm
by omarelunico
Antonio el valor que devuelve es "x86" ya sea 32 bits o 64 bits
tengo FWH 2.8
el pc es core i5 DH61WW a 64 bits, como diferencio si es 32 o 64?
Re: Como saber si procesador es de 32 o 64 bits
Posted: Wed Oct 09, 2013 4:13 pm
by omarelunico
Re: Como saber si procesador es de 32 o 64 bits
Posted: Wed Oct 09, 2013 4:15 pm
by omarelunico
Mensaje Borrado
Re: Como saber si procesador es de 32 o 64 bits
Posted: Wed Oct 09, 2013 4:38 pm
by hmpaquito
omarelunico wrote:El programa nativo tiene que ser a 64 bits para que indique AMD64.
Si el programa está a 32 bits corriendo en una maquina a 64 bits,
Cómo encontrar una función que me haga la diferencia?
Pues según el cuadro que tu has pegado, se puede saber si se cumple ALGUNA estas condiciones:
PROCESSOR_ARCHITECTURE es AMD64
PROCESSOR_ARCHITEW6432 está definida y su valor es AMD64
Saludos
Re: Como saber si procesador es de 32 o 64 bits
Posted: Wed Oct 09, 2013 4:40 pm
by omarelunico
Encontré la solución
la función es GetEnv("PROCESSOR_ARCHITEW6432")
si el programa es nativo a 32 bits ejecutandose en un servidor a 64 bits
Arroja AMD64 en la máquina del servidor que es 64 bits
Arroja NUL en cualquier otra maquina a 32 bits.
Con eso ya puedo diferenciar.
Re: Como saber si procesador es de 32 o 64 bits
Posted: Wed Oct 09, 2013 5:06 pm
by hmpaquito
omarelunico wrote:Encontré la solución
la función es GetEnv("PROCESSOR_ARCHITEW6432")
si el programa es nativo a 32 bits ejecutandose en un servidor a 64 bits
Arroja AMD64 en la máquina del servidor que es 64 bits
Arroja NUL en cualquier otra maquina a 32 bits.
Con eso ya puedo diferenciar.
¡ qué casualidad ! Tu solución es muy, muy parecida a la que yo te he dicho. Genial.