04-23-2012، 04:46 PM
با سرس زیر میتونید راحت لیست درایوهای سستمتن رو بدست بیارید برای استفاده از تابع زیر نیاز به استفاده از یونیت windows , SysUtils , Classes میباشد.
سورس کد :
سورس کد :
کد:
procedure ListDrives(const List: Classes.TStrings);
var
Drives: PChar; // buffer for list of drives
BufSize: Integer; // size of drive buffer
begin
// Get buffer size and allocate it
BufSize := Windows.GetLogicalDriveStrings(0, nil);
GetMem(Drives, BufSize * SizeOf(Char));
try
// Get #0 delimited drives list and convert to string list
if Windows.GetLogicalDriveStrings(BufSize, Drives) = 0 then
SysUtils.RaiseLastOSError;
MultiSzToStrings(Drives, List);
finally
FreeMem(Drives);
end;
end;