PDA

View Full Version : تشخیص درایو فلش مموری



pm_hamze
دوشنبه 20 خرداد 1387, 14:33 عصر
با سلا می خواستم ببینم چطوری میشه در زمانی که فلش مموری به سیستم وصل میشه همون لحظه برنامه یه پیغام بده و بگه فلش مموری وصل شده و درایو فلش رو هم بگه و در ضمن بعضی فلش مموری ها دو درایو همزمان درست میکنند ما میخواهیم فقط درایوی رو که میشه اطلاعات ریخت توش یا ازش در آورد رو پیدا کنیم. با درایو دومی کاری نداریم.

pm_hamze
چهارشنبه 22 خرداد 1387, 00:58 صبح
کسی جواب نمیده

acilios
چهارشنبه 22 خرداد 1387, 07:01 صبح
دوست عزیز میتونی از API استفاده کنی
یه تابع هست که نوع درایوهای سیستم رو بهت میده
نام تابع : GetDriveType

Mah6447
چهارشنبه 22 خرداد 1387, 08:03 صبح
تابع GetDriveType :
این تابع نوع هر یک از درایوهای سیستم را مشخص می کند انواعی از قبیل فلاپی ، دیسک سخت ، CDROM و غیره.
شکل کلی این تابع به صورت زیر است.


Function GetDriveType(lpRootPathName:PChar): LongWord;
پارامتر lpRootPathName یک رشته است و نام درایو مورد نظر را مشخص می کند مثل "\:C".

خروجی این تابع یک عدد است که می تواند مقادیر زیر باشد.
DRIVE_UNKNOWN : درایوی که معرفی شده است قابل دسترسی نمی باشد. برابر با عدد 0 می باشد.
DRIVE_NO_ROOT_DIR: درایوی که معرفی شده است وجود ندارد. برابر با عدد 1 می باشد.
DRIVE_REMOVABLE: برابر با مقدار عددی 2 می باشد و مشخص می کند که دیسک درایو مورد نظر از نوع قابل حمل می باشد.
DRIVE_FIXED: برابر با مقدار عددی 3 می باشد ومشخص می کند که درایو مورد نظر از نوع ثابت است.
DRIVE_REMOTE: برابر با مقدار عددی 4 می باشد و مشخص می کند که درایو مورد نظر از نوع درایوشبکه می باشد.
DRIVE_CDROM: برابر با مقدار عددی 5 می باشد و مشخص می کند که درایو مورد نظر از نوع CD_Drive می باشد.
DRIVE_RAMDISK: برابر با مقدار عددی 6 بوده و مشخص می کند درایو مورد نظر از نوع درایو های ساخته شده در RAM می باشد.

مثال: خط زیر مشخص کننده نوع درایو C می باشد.


if GetDriveType('C:\') = DRIVE_FIXED then
ShowMessage ('It is a hard drive Partition');