Fórum HD fisico OK HD label? #333647
24/11/2006
0
Olá
Para capturar o numero fisico do HD utilizo uma função disponilizada aqui no forum , feita por um russo ,que funciona beleza.
Porém para capturar o label do HD, que muda a cada formatação uttilizo a função abaixo
Function SNum(FDrive:String):String;
Var
Serial:DWord;
DirLen,Flags: DWord;
DLabel : Array[0..11] of Char;
begin
Try GetVolumeInformation(PChar(FDrive+´:\´),dLabel,12,@Serial,DirLen,Flags,nil,0);
Result := IntToHex(Serial,8);//este éo original
//Result := IntToSTR(serial);// este é uma variação que fiz.Uso ou uma ou outra nunca as duas
Except Result :=´´;
end;
end;
Para chamar a função
Coloquei no evento on show do form principal
edit2.text:=SNum(FDrive);
E também coloquei em um speedbutton.
O problema é que no evento onshow da um resultado DIFERENTE do evento clic do button , sempre (???).
Alguém sabe a razão?
Rm
Curtir tópico
+ 0Posts
24/11/2006
Paullsoftware
testei no OnCreate, OnShow, Button tudo dá a mesma coisa...
Gostei + 0
24/11/2006
Paullsoftware
concluindo, essa rotina retorna o serial lógico e não o fisíco!
Gostei + 0
25/11/2006
Rm
Colega paullsoftware.Obrigado por sua colaboração.Vou dar uma revisada aqui e ver o que está acontecendo.
Sim é o serial lógico.A rotina do serial físico peguei aqui no forum e funciona beleza.
Obrigado pela atenção.
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)