Portal Acror
::  Home  ::  Downloads  ::  Your Account  ::  Forums  ::
 
Atualização
Grátis
SistemaBaixar
TPM

 
 
Usuário
Bem-vindo(a), Visitante
Nome

Senha

(Registre)

Sociedade:
Último(a): EDER_SANTO
Novo(s) hoje: 0
Novo(s) ontem: 0
Total: 1008

Pessoas on-line:
Visitante(s): 6
Membro(s): 0
Total: 6
 
 
Menu

 Home
 Os 10 mais
 Enquetes
 Estatisticas
 Recomende
 Selos
Accès réservé aux membres Boletim
 Sistemas
 Codomínios
 Sistemas On-line
 Suporte
 Suporte (AT)
 Help Desk
Accès réservé aux membres Registro
 Contato
 Produtos
 Artigos
 Enviar Artigos
Accès réservé aux membres Tutoriais
 Jornal
 Administração
 Painel Controle
 PGDAS
 Downloads
 Web Links
 Links Parceiros
 Dicionário
 Trabalhe em casa
 Sua Conta
Accès réservé aux membres Tarefas
 Confirmar Pagamento
 PHP
 PHPNuke.org
 NukeCops
 Tools - PHP
 Manual PHP
 Manual MySQL
 Manual Zeos
 Links
 Souza Ramos
 Lumagraf
 Traduz Online
 Games Bestlife
 Fundação LAMF
 Jogos on-Line
 
 
Campeonato





 
 
Climatempo
 
 


COMO SABER O SERIAL NUMBER DE UM HD VIA DELPHI?
Recentemente procurando um trecho de código em Delphi para uma implementação em um dos poucos programas que ainda sou responsável, encontrei um código que escrevi há algum tempo atrás que me foi muito útil em uma ocasião onde precisava validar a instalação da aplicação mediante uma licença vinculada ao número de série do HD do PC instalado.

Além desta função, ainda encontrei outras tantas procedures e functions que escrevi e mantenho ainda em meus arquivos de código e pretendo disponibilizar esses códigos numa série específica de códigos em Pascal, para os que ainda desenvolvem em Delphi e passam talvez pela mesma necessidade que eu já passei algum dia.

Sei que talvez hoje poucas pessoas ainda estejam programando aplicativos para Desktop, Win32. Também acredito que o número de desenvolvedores que usam Delphi ainda, é bem menor que alguns anos atrás, mas também acredito que alguém ainda algum dia possa precisar, então ai vai o primeiro código, a que se refere à identificar o número de série de um HD.

Testei o código na versão 7 do Delphi em um PC com Windows XP SP3 e funcionou corretamente, ok?


function GetSerialNumberFromHD(const SourceDrive: String): String;
var SerialNumber, DirLenght, Marks: DWord;
DriveLabel: Array[0..11] of Char;
stringDrive: String;
charDrive: Char;
begin
Result := 'Error';
if (length(SourceDrive) = 0) then
Exit;
stringDrive := SourceDrive[1];
charDrive := stringDrive[1];
if (charDrive in ['A'..'Z','a'..'z'] = false) then
Exit;
try
GetVolumeInformation(PChar(charDrive+':\'), DriveLabel, 12, @SerialNumber, DirLenght, Marks, nil, 0);
Result := IntToHex(SerialNumber,8);
except
Result := 'Error';
end;
end;
Para testar é simples:

Comece uma nova aplicação, acrescente um componente Button ao seu Form, e coloque o seguinte código no evento OnClick:

procedure TForm1.Button1Click(Sender: TObject);
begin
showmessage(GetSerialNumberFromHD('c:'));
end;



[ Voltar ]

 
:: noteBored phpbb2 style by boo :: PHP-Nuke theme by www.nukemods.com ::


All logos and trademarks in this site are property of their respective owner. The comments are property of their posters, all the rest © 2002 by me
You can syndicate our news using the file backend.php or ultramode.txt
PHP-Nuke Copyright © 2005 by Francisco Burzi. This is free software, and you may redistribute it under the GPL. PHP-Nuke comes with absolutely no warranty, for details, see the license.
Tempo para gerar esta página: 0.15 segundos