PDA

View Full Version : سوال در مورد درایو فلاپی و سی دی



hkiani
یک شنبه 16 مرداد 1384, 21:13 عصر
دوستان سلام، خسته نباشید.
من با سی بیلدر برنامه می‌نویسم. چگونه می‌توان فهمید که در حال حاضر درون درایو فلاپی و یا درایو سی دی دیسکی وجود دارد یا نه؟
لطفا در صورت امکان کمک کنید. قبلا از شما متشکرم.

Pars Giga
دوشنبه 17 مرداد 1384, 10:45 صبح
پیدا کردم می گم

taze kar
دوشنبه 17 مرداد 1384, 11:22 صبح
واسه ما هم بنویس بفهمیم جه جوریه

ممنون

hkiani
سه شنبه 18 مرداد 1384, 09:10 صبح
با سلام مجدد
از توجه شما ممنونم. مشکل من حل شد. برای دوستانی که با این مشکل مواجه هستند راه حل خودم را می‌نویسم:

bool IsDriveReady(AnsiString tasDrive)
{
if(tasDrive.IsEmpty())
tasDrive = GetCurrentDir();
tasDrive = tasDrive.UpperCase();
int liDrive = tasDrive[1] - 'A' + 1;
UINT luiOldErrorMode = SetErrorMode(SEM_FAILCRITICALERRORS);
bool lbReady = (DiskFree(liDrive) >= 0);
SetErrorMode(luiOldErrorMode);
return lbReady;
}البته لازم به ذکر است که توابع ای‌پی‌آی در ویندوز مخصوص این کار وجود دارد ولی اولا استفاده از آنها بسیار مشکل است و ثانیا نحوه‌ی استفاده از آنها نسبت به نسخه‌ای از ویندوز که استفاده می‌کنیم فرق می‌کند. بنابراین راه حل فوق بد نیست.
منتظر راه حلهای بهتری از سوی دوستان هستم.

hkiani
سه شنبه 18 مرداد 1384, 09:20 صبح
در ضمن برای پیدا کردن درایو سی‌دی می‌توانید از توابع ای‌پی‌آی GetLogicalDrives و GetDriveType استفاده کنید.