PDA

View Full Version : سوال: تشخیص دادن وجود درایو مجازی



KajDom
چهارشنبه 24 شهریور 1389, 20:12 عصر
با سلام خدمت دوستان من تازه وارد انجمن شدم و یک سوال از دوستان داشتم و اون هم اینه که چطور یه فایل exe اگر در درایو مجازی باشه تشخیص بده که در درایو مجازیه ، مثلا یک فرم درست کنیم و روی دکمه دستوراتی که باعث تشخیص درایو مجازی بده ، کاری که من می خواهم بکنم اینه که اگه طرف کلیدی رو زد و فایل ما در هارد بود پیغام فایل درون هارد است بده اگه در فلش مموری بود پیغام فلش مموری اگه در درایو مجازی بود پیغام درایو مجازی ، اگه در CD-Rom بود پیغام سی دی رام بده ممنون میشم اگه لطف کنین خود سورس رو بزارین آخه اینجوری بیشتر حالیم می شه . بازهم ممنون

acilios
پنج شنبه 25 شهریور 1389, 12:33 عصر
با سلام.
از کد زیر برای تشخیص درایوهای موجود در کامپیوتر میتونین استفاده کنید :


var
Drive: Char;
DriveLetter: String[4];
begin
for Drive := 'A' to 'Z' do
begin
DriveLetter := Drive + ':\';
case GetDriveType(PChar(Drive + ':\')) of
DRIVE_REMOVABLE:
Memo1.Lines.Add(DriveLetter + ' Floppy Drive') ;
DRIVE_FIXED:
Memo1.Lines.Add(DriveLetter + ' Fixed Drive') ;
DRIVE_REMOTE:
Memo1.Lines.Add(DriveLetter + ' Network Drive') ;
DRIVE_CDROM:
Memo1.Lines.Add(DriveLetter + ' CD-ROM Drive') ;
DRIVE_RAMDISK:
Memo1.Lines.Add(DriveLetter + ' RAM Disk') ;
end;
end;

KajDom
شنبه 27 شهریور 1389, 00:09 صبح
با سلام خدمت دوستان و تشکر از گذاشتن این کد توسط دوستمون
اما با عرض معذرت باید بگویم این چیزی نبود که من می خواستم و این کدها رو بلد بودم مشکل اصلی بنده تشخیص درایو مجازی است مثل برنامه هایی مثل Virtual Clone Drive که درایو مجازی ایجاد می کنند . دستور Cd-Rom درایو مجازی رو Cd-Rom تشخیص میده در صورتیکه من می خواهم فورم ایجاد شده در درایو مجازی پیغام Cd-Rom نده و نشون بده که واقعا در درایو مجازی است ممنون می شم دوستان راهنمایی کنند و نمونه سورس کدی بزارند بازهم تشکر می کنم

acilios
شنبه 27 شهریور 1389, 08:34 صبح
دستور Cd-Rom درایو مجازی رو Cd-Rom تشخیص میدهمن نگفتم که برای تشخیص درایو مجازیه! یه مثال بود برای راهنمایی ، گفتم شاید به کارتون بیاد ، همین.

این یه مقاله در مورد برنامه نویسی درایو مجازی در API همراه با نمونه کدهایی به زبان ++C هستش ، ببنید میتونین ازش استفاده کنید ؟

www.vmware.com/support/developer/vddk/VirtualDiskAPIprogramming.pdf (http://barnamenevis.org/forum/www.vmware.com/support/developer/vddk/VirtualDiskAPIprogramming.pdf)

موفق باشید.

KajDom
یک شنبه 28 شهریور 1389, 19:44 عصر
با سلام وتشکر از معرفی این فایل
من هنوز آنرا نخوندم ، اما یه سوال داشتم آیا با دستورات اسمبلی همچنین چیزی رو بلدین و یا کامپوننتی برای اینکار وجود ندارد ممنون می شم راهنمایی کنین

علیرضا حسن زاده
یک شنبه 28 شهریور 1389, 20:10 عصر
کار زیاد سختی نیست البته تا جایی که سواد من قد بده
اول وقتی می خوای بدونی درایو مجازی هست اول توسط برنامه CD رو Eject کن بعد دستور له داخل کشیدن CD رو اجرا کن با این کار اگه CD مجازی باشه وقتی CD خارج شد هنگام برگشت دیگه CD داخل CD رام قرار نمی گیره و معلوم میشه که مجازی بوده و برعکس (منکه ازش تا حدودی جواب گرفتم)

FiACKER
یک شنبه 28 شهریور 1389, 21:44 عصر
عزيز دل برادر اين جوري كه جواب نميده!
خيلي از برنامه هاي درايو مجازي، وقتي حالت ‍Close رو هم رويه درايوشون اجرا كني، اخرين ايميجي كه لوود شده رو بارگذاري ميكنن. پس اين چيزي كه شما ميگيد عملا كاربردي نداره! بلكه برنامه ي سازنده درايو مجازي ضعيف باشه و اين امكان رو نداشته باشه.

ولي دوست عزيز بايد بهتون بگم به اين اسونيا نميتونين با چند خط كده ساده اين كار رو انجام بدين.

مثلا اگه تمامي برنامه هاي درايو مجازي ساز رو نصب كنيد و نوع درايوي كه ساختن رو از نظر درايور چك كنيد، هر كدومش يه چيزه خاصي هست و شايد بتونيد از اين طريق چك كنيد.

KajDom
پنج شنبه 01 مهر 1389, 18:42 عصر
با سلام خدمت دوستان
آيا واقعا روشي براي اينكار وجود نداره اگر مديران محترم اطلاعي دارن بگويند تا ما و ساير دوستان استفاده كنيم ممنون مي شم