با فایلهای CAB در ویژوال بیسیک

با سلام
فایلهای CAB برای ذخیره سازی یک یا چند فایل در یک ساختار فشرده مورد استفاده قرار می‌گیرند. این نوع فایل تقریبا شبیه به فایلهای ZIP هست و فقط یک تغییر جزئی دارد.
خب. حالا برای ساختن این نوع فایل باید از چه برنامه‌ای کمک گرفت؟
بهمراه پروژه ویژوال بیسیک یک فایل با نام MakeCab.Exe نصب میشه که بصورت خط فرمان قادر به ساخت و یا استخراج فایلهای Cab هست.
و اما داستان ما.
سورسی را برایتان تهیه کرده‌ام که با استفاده از APIی به نام SetupIterateCabinet قادر به ارتباط با این نوع فایلهاست که بر اساس شکل عمل می‌تواند مشخصات فایلهای موجود در مجموعه را با ما تحویل دهد اعم از تعداد-اندازه-تاریخ و زمان و ...
در ابتدا با تشکیل یک کلاس بنام CabFile که خود حاوی چندین متد و خصوصیات است سطح پیچیدگی کار را پایین آورده‌ایم که همانند یک شئی با آن رفتار شود.
نکته آخر اینکه این API بصورت CallBack اطلاعات را به ما تحویل می‌دهد که جهت آشنایی شما با این روش نیز دیدن سورس خالی از لطف نیست.

ساخت توابع API با ویژوال بیسیک

سلام
شاید برای شما این سوال مطرح باشد که بعنوان یک برنامه‌نویس حرفه‌ای چگونه می‌توانید با ویژوال بیسیک توابع خود را درون فایلهای DLL بنویسید و در مواقع لزوم آنرا بعنوان توابع API در ویژوال بیسیک یا سایر زبانها مورد استفاده قرار دهید. چیزی که در زبانهایی مانند ویژوال سی و ... راحت قابل دسترس و تولید می‌باشند. چنانچه در خود VB فقط مورد استفاده‌تان باشد که خب از طریق کلاس‌ها قابل پیاده‌سازی است، اما اگر نیاز به این شد تا در نرم‌افزارهایی که امکان ساخت توابع سطح پایین در آنها مقدور نیست مورد استفاده قرار گیرند چه باید کرد؟ بعنوان مثال در نرم‌افزار MultiMedia Builder یا Wise Install Master که امکان صدا زدن توابع API در آنها پیش‌بینی شده است.

حتی کاربرد دیگری که می‌توان برای این تکنیک جست، جهت کم کردن حجم برنامه اصلی و مهندسی‌تر شدن پروژه است. شما ماژول‌های متنوعی از برنامه را درون فایل‌های DLL تعریف کنید و در پروژه و در هنگام لزوم از آن استفاده کنید، چیزی که در اکثر نرم‌افزارهای مهندسی وجود دارد که می‌توان به PlugIn‌ها اشاره کرد. همانند نرم‌افزار Winamp.


برای این منظور شما را با مقاله‌ای در این باب آشنا می‌کنم که امکان بهره‌برداری از آن نیز وجود دارد.
به آدرس http://www.vb-helper.com/howto_make_standard_dll.html مراجعه کنید تا شرح کاملی در اینباره بیابید.
برای نمونه عملی هم این فایل را دانلود کنید.

منتظر پرسش و پاسخ شما هستم.
تا بعد...