ايران ويج

نسخه‌ی کامل: رجیستر شدن DLL یا OCX
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
دوستان میخواستم ببینم وقتی ما یه DLL یا یه OCX رو با regsvr32 رجیستر میکنیم در واقع چه اتفاقی میوفته ؟
ما چندین نوع فایل DLL داریم و همه اونها نیاز به رجیستر شدن ندارند فقط اونهایی که حاوی اشیای COM باشند باید رجیستر بشن . فایلهای OCX هم اشیای COM هستند و باید رجیستر بشن .
هر شی COM دارای یک عدد یا شماره شناسه منحصربفرد هست که به اون GUID میگن . زمان رجیستر شدن این شماره با اطلاعات مربوط به شی COM در رجیستری ویندوز ثبت میشه . هنگام اجرای برنامه هایی که وابسته به این اشیا هستند ویندوز قادر خواهد بود که شی مورد نظر برنامه رو پیدا کنه و اونو در اختیار برنامه بگذاره.
ممنونم
میشه بگید اشیای COM چی هستند ؟
در کل نوشتن یه برنامه مشابه regsvr32.exe کار سختیه ؟
COM یا Component Object Model یک مکانیسم شی گرایی تقریبا قدیمی هست که توسط مایکروسافت در سال 1993 ارائه شد . بیشترین هدف این تکنولوژی ، ایجاد دادن امکان ساخت اشیا بصورت داینامیک و تبادل و به اشتراک گذاریه قابلیت های اونها بین پروسس ها ، برنامه ها و حتی کامپیوتر های مختلف بود . همینطور DCOM و +COM هم نسخه های متفاوتی از اون بودند که بعدها ارائه شدن .
از اولین سیستم هایی که بر این مبنا ساخته شدند میشه همون مکانیسم OLE رو اشاره کرد . در زمان ارائه ویژوال استدیو 6 در سال 1998 مبحث ActiveX هم به این جمع اضافه شد .
برای مثال تمام او سیستم های آتوماسیون Office هم بر همین مبنا ساخته شده ( برنامه های پکیج آفیس همه به نوعی COM Server هستند و شما میتونید برنامه ای بنویسید که به عنوان COM client از قابلیت های اونها استفاده کنه ) ساختار درونی و برنامه نویسی سیستم های COM خیلی پیچیده بود و مشکلات عمده ای داشت برای همین مایکروسافت سیستم Net. رو ارائه کرد که تمام مشکلات موجود COM رو برطرف کرد ، برنامه نویسی رو خیلی ساده کرد و سیستم COM رو کنار گذاشت .

نوشتن همچین برنامه ای نیاز به اطلاعات دقیقا از عملکرد رجیستر کردن داره .
ممنون اقا محمد ....
مثل همیشه کامل و دقیق