Como descobrir se a versão do Windows é 64 bits?
Esta função é capaz de verificar a plataforma em que o executável
está rodando, ou seja, se você criar um exe com esta dica e rodar
em um SO de 64 bits ela retorna True, senão retorna False.
É necessário estar declarado Windows na seção uses,
em versões unicode declare Winapi.Windows.
Abaixo segue o código fonte da função:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
| function Is64Bits: Boolean;
const
PROCESSOR_ARCHITECTURE_INTEL = $0000;
PROCESSOR_ARCHITECTURE_IA64 = $0006;
PROCESSOR_ARCHITECTURE_AMD64 = $0009;
PROCESSOR_ARCHITECTURE_UNKNOWN = $FFFF;
var
xSysInfo: TSystemInfo;
begin
GetNativeSystemInfo(xSysInfo);
case xSysInfo.wProcessorArchitecture of
PROCESSOR_ARCHITECTURE_AMD64, PROCESSOR_ARCHITECTURE_IA64:
Result := True;
else
Result := False;
end;
end; |
function Is64Bits: Boolean;
const
PROCESSOR_ARCHITECTURE_INTEL = $0000;
PROCESSOR_ARCHITECTURE_IA64 = $0006;
PROCESSOR_ARCHITECTURE_AMD64 = $0009;
PROCESSOR_ARCHITECTURE_UNKNOWN = $FFFF;
var
xSysInfo: TSystemInfo;
begin
GetNativeSystemInfo(xSysInfo);
case xSysInfo.wProcessorArchitecture of
PROCESSOR_ARCHITECTURE_AMD64, PROCESSOR_ARCHITECTURE_IA64:
Result := True;
else
Result := False;
end;
end;
Exemplo de uso:
1
2
3
4
5
6
7
| procedure TForm1.Button1Click(Sender: TObject);
begin
if Is64Bits then
ShowMessage('O sistema operacional roda 64 bits!')
else
ShowMessage('O sistema operacional NÃO roda 64 bits!');
end; |
procedure TForm1.Button1Click(Sender: TObject);
begin
if Is64Bits then
ShowMessage('O sistema operacional roda 64 bits!')
else
ShowMessage('O sistema operacional NÃO roda 64 bits!');
end;
-
InfusTec
-
4.948 views
- 0 comentários
- 25 de março de 2015
Está gostando do conteúdo? Considere pagar um cafezinho para nossa equipe!
Posts Relacionados - Continue Aprendendo