واضح آرشیو وب فارسی:سایت ریسک: در خواست آموزش سرچ فایل در ویژوال بیسیک DJ_Baba 17 آذر 1386, 00:30سلام من می خواستم با وی بی بتونم فایل سرچ کنم در درایو ها اگه میشه در حد مبتدی باشه the_king 17 آذر 1386, 05:01دستور اصلی که باید استفاده کنید تابع Dir است، اما این دستور دو تا عیب بزرگ داره، اول اینکه فقط یک روتین می تونه در یکزمان ازش استفاده کنه، و اگه دو تا روتین بخواهند هر دو از این تابع استفاده کنند، تداخل پیش میاد. دومین عیب Dir اینه که فقط محتویات یک پوشه را می گرده و کاری به محتویات زیر پوشه های داخلش نداره. مثلا وقتی شما مسیر درایو :C را بهش بدهید، داخل پوشه C:Windows را جستجو نمی کنه. من یک تابع ساختم به اسم SearchFiles که از شما چندین پارامتر را می خواهد : Path مسیری که می خواهید در آن جستجو کنید مثلا : C: C:WINDOWS E:GamesGTA FileName نام فایلی است که دنبالش می گردید، مثلا : *.exe جستجوی فایلهای اجرایی Readme جستجوی فایلهایی که در نام آنها عبارت مورد نظر باشد. a فایلهایی که در نام یا پسوند آنها حرف ای باشد. *.* همه فایلهایی که پسوند دارند. * همه فایلها، چه پسوند داشته باشند و چه نداشته باشند. Files یک آرایه از نوع رشته ای که باید بصورت دینامیک طولش تغییر کنید مثلا : Dim MyFiles() As String فایلهای جستجو شده در این آرایه قرار می گیرند. BaseIndex اندیس اولین فایلی که قرار است در آرایه قرار بگیرد، مقدار متعارف آن صفر است. SubFolders یک مقدار Boolean است، اگر True باشد زیر پوشه ها را هم جستجو می کند. این تابع از یک تابع API ویندوز استفاده می کند به نام PathIsDirectory. PathIsDirectory یک مسیر را از شما می گیرد و مشخص می کند که آیا یک پوشه است یا نه. می توانیم از تابع GetAttr موجود در خود VB هم برای این منظور استفاده کنیم ولی در بعضی از پوشه ها خطای دسترسی به پوشه کار را مشکل می کند. مقدار عددی که تابع برمی گرداند تعداد فایلهایی است که پیدا شده و در آرایه Files هستند. من یک برنامه جستجو را همراه با فایل اجرایی exe بصورت zip شده ضمیمه این پست کردم : DJ_Baba 17 آذر 1386, 23:46فقط میشه بگی من چطوری می تونم وقتی یکی از فایل های پیدا شده را انتخاب کردم با زدن کلید مثلا add اون آدرس رو بفرستم به TextBox؟ the_king 18 آذر 1386, 01:30البته، وقتی شما یکی از سطرهای یک ListBox را انتخاب می کنید، Text مقدار اون سطر را نشون می ده : حالا فرض کنیم که نام ListBox ما LstFiles باشه (در برنامه ای که من نوشتم) و نام TextBox شما Text1 باشه و شما بعد از انتخاب کردن یک فایل، روی دکمه ای کلیک کنید به نام Command 1. Private Sub Command 1_Click() Text1.Text = LstFiles.Text End Sub با این کد محتویات اون سطر انتخاب شده منتقل میشه داخل TextBox. البته من توصیه می کنم که این کد را برای DblClick کردن روی خود ListBox هم تعریف کنید : Private Sub LstFiles_DblClick() Text1.Text = LstFiles.Text End Sub MDP 25 آذر 1386, 00:18vb 6 استاد گفت ولی Net. خیلی راحت تره!:oops:
این صفحه را در گوگل محبوب کنید
[ارسال شده از: سایت ریسک]
[مشاهده در: www.ri3k.eu]
[تعداد بازديد از اين مطلب: 4126]