سلام
چطوری میتونیم کل دارایو هامو سرچ کنم و یه پسوند خاص رو پیدا کنم ؟
سلام
چطوری میتونیم کل دارایو هامو سرچ کنم و یه پسوند خاص رو پیدا کنم ؟
ویدوزت چیه و اون فرمت چیه؟؟؟نقل قول:
ویندوز xpنقل قول:
در ضمن این چه ربطی به سوال من داشت ؟!:18:
فکر کنم شما منظور منو نگرفته باشید ! می خواهم با ویژال بیسیک این کارو انجام بدم نه ......:27:
سلام
در تاپیک دیگری گفته بودید که از نسخه 2006 استفاده میکنید.
اگر اینطور است با تک دستور زیر میتوانید کل یک پارتیشن را جستجو کنید:
و برای کل پارتیشن ها هم:کد:Dim files() As String = System.IO.Directory.GetFiles("C:\", "*.exe", System.IO.SearchOption.AllDirectories)
البته میتوان کدهایی با سرعت اسکن بسیار بالاتر هم نوشت.کد:Dim files As New System.Collections.ArrayList()
For Each drive As System.IO.DriveInfo In System.IO.DriveInfo.GetDrives
Dim x() As String = System.IO.Directory.GetFiles(drive.Name, "*.exe", System.IO.SearchOption.AllDirectories)
If (x IsNot Nothing) Then files.AddRange(x)
Next
سلامنقل قول:
من از vb6 استفاده مي كنم .
خوب اين كد كه دادي رو كپي كردم ولي كلا خطا داد كل دستور ها قرمز شد . نمي دونم بايد چكار كنم???:31:
كسي نبود ما رو راهنمايي كنه ؟
فکر نکنم این کد به نسخه ای که تو باهاش کار میکنی بخوره.نقل قول:
سلام
من از vb6 استفاده مي كنم .
خوب اين كد كه دادي رو كپي كردم ولي كلا خطا داد كل دستور ها قرمز شد . نمي دونم بايد چكار كنم??? [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
دوست عزیز لطفا از دادن اسپم خودداری کنید ایشون که خودشون گفتند پیغام خطا میدهد دیگه لزومی نبود شما بگیدنقل قول:
سلام
برای به دست آوردن لیست درایوها میتوانید از API های کتابخانه kernel32 استفاده کنیدنقل قول:
چطوری میتونیم کل دارایو هامو سرچ کنم و یه پسوند خاص رو پیدا کنم ؟
من از vb6 استفاده مي كنم
GetLogicalDriveStrings
یا
GetLogicalDrives
=====
بعد باید هر درایو را اسکن کنید.
برای این عمل میتوانید از دستور Dir خود VB6 هم استفاده کنید یا از سه API زیر استفاده کنید:
FindFirstFile
FindNextFile
FindClose
که بازهم از کتابخانه kernel32 هستند.
البته در هر صورت این دستورات فقط محتویات یک پوشه را استخراج میکنند و شما باید در یک تابع خود فراخوان برای تمام زیر پوشه ها مجدداً تابع را اجرا کنید
=====
در واقع روند اصلی الگوریتم چنین است.
برای پارامترهای ورودی و خروجی api ها میتوانید به msdn و یا برنامه کمکی APILOAD.EXE رجوع کنید.
موفق باشید.
ميشه لطف كني دستور كاملش رو واسم بزارينقل قول: