یکشنبه, ۱۶ اردیبهشت, ۱۴۰۳ / 5 May, 2024
مجله ویستا

ویندوز ایکس‌پی و ۲۰۰۰: لیست فایل‌های Cmd و اسکریپت VB


ویندوز ایکس‌پی و ۲۰۰۰: لیست فایل‌های Cmd و اسکریپت VB
● مشكل:
می‌خواهید لیست فایلی كاملی را تهیه كرده و در یك اسكریپت VB با آن كار كنید. برای تشكیل لیست فایل می‌توانید از دو متد استفاده كنید. هر كدام از متدها ضررهای خودش را دارد: خواندن فایل‌ها با اسكریپت VB به چند كد احتیاج داشته و زمان زیادی طول می‌كشد. از طریق یك دستور DIR با سطر دستوری (Cmd.exe/c dir...,,) گرچه عملیات زودتر انجام می‌گیرد اما از خود متن ASCII به جای گذاشته و علامات خاص مربوط به زبانهای مختلف را از بین می‌برد.
● راه حل:
دستور a/ در Cmd.EXE باید بنا به گفته‌های مایكروسافت متن ANSI تولید كند، اما كار نمی‌كند. البته اگر لیست فایل را در قالب Unicode وارد كنید می‌توانید باز هم سریعا به متد DIR باز گردید.
پارامتر U/ كه باز مربوط به Cmd می‌باشد بدون هیچ مشكلی كار می‌كند:
cmd.exe/u/c dir/a-d/s/b C:*.*>C:List.txt
اگر چنین دستوری را با یك متد Run در یك اسكریپت VB درست كنید، می‌توانید لیست فایل تولید شده را پس از تولید بدون مشكل از لحاظ كدها جستجو كرده و فیلتر كنید. فقط كافیست كه در هنگام باز كردن لیست فایل در اسكریپت VB دقیقا وارد كنید كه موارد داده شده Unicode می‌باشند:
set temp = FSO.GetFile ("C:list.txt")i
set datei=temp.OpenAsTextStream(۱,-۱)i
پارامتر آخر یعنی ۱- برای تفسیر و توضیح Unicode بكار می‌رود. اگر برای فهم این مسئله به یك مثال احتیاج دارید می‌توانید به آدرس زیر مراجعه كنید:
www.pcwelt.de/downloads/pcwelt-tools/tools/۶۲۱۳۶/index.html
این اسكریپت پوشه‌ها و درایوهای مورد نظر شما را بررسی كرده و توسط Inputbox به شما اجازه جستجوی فایل‌های مورد نظر را می‌دهد. برای هر نتیجه پیدا شده، این اسكریپت لینك كوچكی را تشكیل می‌دهد تا به سرعت قابل استفاده شود.
منبع : علم الکترونیک و کامپیوتر