PDA

View Full Version : تست موجود بودن درایو



مجتبی جوادی
یک شنبه 02 تیر 1387, 20:13 عصر
دوستان سلام
اگر ممکن است لطفا توضیح دهید چگونه می شود از موجود بودن یک درایو مطلع شد؟
مثلا یک فایل را می خواهیم در درایو H هارد دیسک کپی کنیم . قبل از کپی چک شود آیا درایو H موجود است یا نه ؟

SYNDROME
یک شنبه 02 تیر 1387, 20:49 عصر
دوستان سلام
اگر ممکن است لطفا توضیح دهید چگونه می شود از موجود بودن یک درایو مطلع شد؟
مثلا یک فایل را می خواهیم در درایو H هارد دیسک کپی کنیم . قبل از کپی چک شود آیا درایو H موجود است یا نه ؟
می توانید از کد زیر استفاده کنید.


IF DirectoryExists('C:\') Then
Caption := 'Yes'
Else
Caption := 'No';

موفق باشید

Golzar7
یک شنبه 02 تیر 1387, 21:17 عصر
از اين كد استفاده كن
وضعيت همه درايو هارو بهت ميده
اگه درايوي نباشه مقدار dtNoRootDir برميگردونه



Type
TDriveType = (dtUNKnown, dtNoRootDir, dtRemovable, dtFixed, dtRemote, dtCDRom, dtRamDisk);
Function GetDriveState(Drive : Char) : TDriveType;
Var
S : String;
Begin
If Drive In ['a'..'z', 'A'..'Z'] Then
Begin
S:=Drive+':\';
Case Windows.GetDriveType(PChar(S)) Of
DRIVE_UNKNOWN : Result := dtUNKnown;
DRIVE_NO_ROOT_DIR : Result := dtNoRootDir;
DRIVE_REMOVABLE : Result := dtRemovable;
DRIVE_FIXED : Result := dtFixed;
DRIVE_REMOTE : Result := dtRemote;
DRIVE_CDROM : Result := dtCDRom;
DRIVE_RAMDISK : Result := dtRamDisk;
Else Result := dtUNKnown;
End;
End
Else
Result:=dtNoRootDir;
End;

babak_delphi
یک شنبه 02 تیر 1387, 22:05 عصر
بطور ساده تر با Windows.GetDriveType و کنترل ورودی تابع هم میتوانید این کار را انجام دهید