Merhaba Arkadaşlar.
Çıkarılabilir USB disklerin listesini almak için:
procedure GetDriveLetters(AList: TStrings);
var
*vDrivesSize: Cardinal;
*vDrives: array [0 .. 128] of Char;
*vDrive: PChar;
*typ: Integer;//**
*s: string;//**
begin
*AList.BeginUpdate;
*try
* *AList.Clear;
* *vDrivesSize := GetLogicalDriveStrings(SizeOf(vDrives), vDrives);
* *if vDrivesSize = 0 then
* * *Exit;
* *vDrive := vDrives;
* *while vDrive^ #0 do
* *begin
* * *s := StrPas(vDrive); //**
* * *typ := GetDriveType(PChar(s));//**
* * *if typ 0 then//**
* * * *case typ of//**
* * * * *DRIVE_REMOVABLE://**
* * * * * *begin//**
* * * * * * *AList.Add(StrPas(vDrive));
* * * * * *end;//**
* * * *end;//**
* * *Inc(vDrive, SizeOf(vDrive));
* *end;
*finally
* *AList.EndUpdate;
*end;
end;
Kullanımı:
GetDriveLetters(ListBox1.Items);
Not:*//** kısmıını silerseniz tüm Sürücü listesini alabilirsiniz..
Çıkarılabilir USB disklerin listesini almak için:
procedure GetDriveLetters(AList: TStrings);
var
*vDrivesSize: Cardinal;
*vDrives: array [0 .. 128] of Char;
*vDrive: PChar;
*typ: Integer;//**
*s: string;//**
begin
*AList.BeginUpdate;
*try
* *AList.Clear;
* *vDrivesSize := GetLogicalDriveStrings(SizeOf(vDrives), vDrives);
* *if vDrivesSize = 0 then
* * *Exit;
* *vDrive := vDrives;
* *while vDrive^ #0 do
* *begin
* * *s := StrPas(vDrive); //**
* * *typ := GetDriveType(PChar(s));//**
* * *if typ 0 then//**
* * * *case typ of//**
* * * * *DRIVE_REMOVABLE://**
* * * * * *begin//**
* * * * * * *AList.Add(StrPas(vDrive));
* * * * * *end;//**
* * * *end;//**
* * *Inc(vDrive, SizeOf(vDrive));
* *end;
*finally
* *AList.EndUpdate;
*end;
end;
Kullanımı:
GetDriveLetters(ListBox1.Items);
Not:*//** kısmıını silerseniz tüm Sürücü listesini alabilirsiniz..