Hd Principal

Delphi

13/02/2005

Olá pessoal do clube Delphi, eu estou procurando algum código que diga qual o hd principal, onde está instalado o Windows, será que alguem pode me ajudar?


Ipod I

Ipod I

Curtidas 0

Respostas

Beppe

Beppe

13/02/2005

procedure TForm1.Button1Click(Sender: TObject);
var
  Dir: array[0..MAX_PATH] of Char;
begin
  Dir := 0;
  GetWindowsDirectory(@Dir, Length(Dir));
  Caption := Dir[0];
end;


O caminho até o diretório do Windows é copiado para o array Dir. Dir[0] representa o drive.


GOSTEI 0
Ipod I

Ipod I

13/02/2005

Valeu! :D


GOSTEI 0
Beppe

Beppe

13/02/2005

O código funcionará perfeitamente nas versões atuais do Windows, mas se um dia a MS ampliar o número de caracteres num nome de caminho, pode dar um ´buffer overrun´ aí.

O correto é:
procedure TForm1.Button1Click(Sender: TObject); 
var 
  Dir: array[0..MAX_PATH] of Char; 
begin 
  Dir := 0; 
  GetWindowsDirectory(@Dir, Length(Dir) - 1); 
  Caption := Dir[0]; 
end;



GOSTEI 0
POSTAR