Como ler o Serial do Volume do HD? – Show Delphi

DICAS

Visite a biblioteca de dicas da comunidade.

Saiba mais

ARTIGOS

Abordagens detalhadas sobre assuntos diversos.

Saiba mais

INICIANTES

Aprenda a programar de um modo simples e fácil.

Saiba mais

DOWNLOADS

Acesse os materiais exclusivos aos membros.

Saiba mais
voltar

PARA QUEM GOSTA DE DELPHI

Como ler o Serial do Volume do HD?

 

É necessário estar declarado Windows e SysUtils na seção uses,
em versões unicode declare Winapi.Windows e System.SysUtils.

Abaixo segue o código fonte da função:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
function GetSerialNum(FDrive:String) :String;
var
  Serial : DWord;
  DirLen, Flags : DWord;
  DLabel : Array[0..11] of Char;
begin
  try
    Serial := 0;
    GetVolumeInformation(PChar(FDrive + ':\'), dLabel, 12, @Serial,
    DirLen, Flags, nil, 0);
    Result := IntToHex(Serial, 8);
  except
    Result := '00000000';
  end;
end;

Exemplos de uso

1
2
3
4
5
6
7
8
9
10
11
procedure TForm1.Button1Click(Sender: TObject);
begin
  // Lendo o serial do volume do Disco C.
  ShowMessage(GetSerialNum('C'));
 
  // Lendo o serial do volume do Disco D.
  ShowMessage(GetSerialNum('D'));
 
  // Caso não consiga ler a Unidade é retornado zeros
  ShowMessage(GetSerialNum('J'));
end;
Facebook Comments

Posts Relacionados

  • Administrador
  • 727 views
  • 0 comentários
  • 28 de março de 2015

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Ir ao topo

© 2016 Infus Soluções em Tecnologia - Todos os Direitos Reservados