كاشف USB Drive‏
#1
بسم الله الرحمن الرحيم

يوم بعد يوم نتقدم باللغه
أنصح كل مبتدأ بالدوره

دورة دروس دلفي للعرب

اليوم نستعرض برنامج صغير يقوم بكشف اذا كان يو أس بي متواجد بنظام

كود :
procedure TForm1.Button1Click(Sender: TObject);
var Flash : Char ;
begin
for Flash := 'A' To 'Z' do
if GetDriveType(Pchar(Flash + ':\')) = 2 Then
  Memo1.Lines.Add(Flash + ':\');
end;

end.

هنا الكود

بتقدر تغير بدل

if GetDriveType(Pchar(Flash + ':\')) = 2 Then

تجعها

if GetDriveType(Pchar(Flash + ':\')) = 3 Then
او

if GetDriveType(Pchar(Flash + ':\')) = 4 Then

علي حسب المراد
أستكشاف الدريافات كلها
أسكتشاف السي دي روم وما الي ذلك

كود :
DRIVE_UNKNOWN = 0;
  {$EXTERNALSYM DRIVE_UNKNOWN}
  DRIVE_NO_ROOT_DIR = 1;
  {$EXTERNALSYM DRIVE_NO_ROOT_DIR}
  DRIVE_REMOVABLE = 2;
  {$EXTERNALSYM DRIVE_REMOVABLE}
  DRIVE_FIXED = 3;
  {$EXTERNALSYM DRIVE_FIXED}
  DRIVE_REMOTE = 4;
  {$EXTERNALSYM DRIVE_REMOTE}
  DRIVE_CDROM = 5;
  {$EXTERNALSYM DRIVE_CDROM}
  DRIVE_RAMDISK = 6;
  {$EXTERNALSYM DRIVE_RAMDISK}

تقدر أن تستخدمهم كلهم ب

CASE OF

مثال

كود :
procedure TForm1.Button1Click(Sender: TObject);
var Flash : Char ;
begin
for Flash := 'A' To 'Z' do
begin
case GetDriveType(Pchar(Flash + ':\')) of
  DRIVE_REMOVABLE :
  Memo1.Lines.Add(Flash + ':\');
  DRIVE_FIXED :
  Memo1.Lines.Add(Flash + ':\');
end;
end;
end;
end.

**** أن يكون الشرح واضح
[-] كل من 2 users say قال شكرا ل php3man على المشاركة المفيدة
  • salmaanga, taha moh
الرد
#2
اخي العزيز هذه الطريقة رغم صحتها فهي لا تجدي نفعا في حالة usb ممكن انزع usb في اي لحضة
اذا استعملت التايمر يبقى يضيف كل مدة زمنية مححدة
احتجت اكتشاف usb من قبل و استعملت الطريقة التي تعرضها انت الان لكن وجدت اخطاء كثيرة فيها يجب استعمال دوال طويلة ومعقدة لاكتشاف ادخال USB يوجد مثال جيد جدا في المنتدى يفي بالغرض
على كلمشكور على المجهود
اللهم اهدنا واهد بنا وجعلنا سببا لم اهتدى
الرد
#3
مشكور على المعلومات , موفق إن شاء الله ...
الرد
#4
شكرا على المعلومة
الرد
#5
السلام عليكم ورحمة الله ....شكراً على هذا الكود ربي يحفظك
الرد


التنقل السريع :


مستخدمين يتصفحوا هذا الموضوع: 1 ضيف