الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

يمكن أحد يشرح لي ال COM

مغلق
بدأه القط الأسود في 17 أغسطس 2004 · 6 رد · 2,442 مشاهدة · في الأسئلة المجابة
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

أنا ما فهمت شي من هذا الكوم، يعني لو في حد عنده شرح ولو بسيط (وبالعربي لو سمحتم) لأني حاولت أن أقرأ كم كتاب بالإنجليزي، بس فشلت :-(

#2

السلام عليكم ,,

COM اختصارا ل Component Object Model ,, عبارة عن ملفات dll أو exe "تنفيذية" بها واجهة Interface او عدة واجهات ,, تطبق دوال معينة ,,

والفكرة أن ال Interfaces يمكن تشبيهها بالكائنات التي تعرف دوال وهمية ,,

المهم الفكرة بما فيها أنها تتيح آلية اتصال مع Server بعيد في حال تبنيت ال DCOM أو ال Com+ ,, وهي كما ال Com لكن ال DCOM وال Com+ تطبق للعمل على سيرفر بعيد ,, لذا فهي تكون على ملفات exe لتعمل خارج المعالجة ,, وبعدها يتصل بها العميل ببرتكول تسيير Com+ الذي تعمل عليه خدمة ال COM+ في الوندوز ,,

كتابة واجهات ل COM يمكن أن يتم من الصفر " وهي عملية مرهقة جدا " أو باستخدام ال ATL "Active Template Library وهي أسهل كثيرا ,,

فقط عليك كتابة الواجهة مع تعريف الدوال التي ستتعامل بها ,,

لCom عدة واجهات قياسية ومنها الالزامية ك IUNKNOWN تطبق تلقائيا على أي واجهة مع الدوال AddRef وRelease ,,

مكونات Com التي لاتدعم واجهة UI Interface تسمى Com عادية ,, أما التي تدعم واجهة UI "User Interface " فهي ال ActiveX ,, ال ActiveX ليس الا مكون كوم يطبق عدة واجهات اضافية مع واجهة UI رسومية لاستخدامه ,,

الواجهات التي يمكن تطبيقها أيضا ,, IDispatch ,, وتستخدم لعمليات تسيير Marshaling المتغيرات من لغات البرمجة المختلفة من والى المكون كوم ,, لتستطيع أي لغة برمجة التعامل مع المكون ,, لكن عليك التقيد بالانواع الاساسية المدعومة من أغلب لغات البرمجة ,و والابتعاد عن المؤشرات التي لاتدعمها لغات البرمجة الأخرى ,, وخصوصا مؤشر المؤشر ** ,,

وجهة أخرى ك IMarshaling لتسيير البيانات من والى مكون على جهاز آخر ,, طبعا بعد تمهيد الاتصال بخدمة ال COM+ في الجهاز البعيد " ويتم ذلك فقط باستدعاء التابع CoCreateInstanceEx بعيدا عن تدخل المبرمج " ,,

Imarshaling واجهة معقدة يجب كتابتها لضمان تسيير البيانات ضمن المعالجات من Process الى آخر ,,

استخدام Com يحتاج لعمل import لملف ال dll أو ال tlb الخاص بالمكون ,, أو حتى ال exe "على ماأظن لم أجب ذلك قبلا " ,, ثم استخدام ملف الرأس الناتج عن التصرف والذي ستجده في مجلد المشروع لتعرف المستخبي في ملف ال dll ,, وتعرف ماذا تطبق الواجهة فعليا ,,

طبعا مع ربط ملف ال Lib الناتج أيضا ,,

تقنيات التواصل بين الاجهزة اتلأخرى كثيرة ومنافسة لكوم أمثال ,,

RPC و Socket و Corba و بعض التقنيات الاخرى كال PipeName ,,

أتمنى أن أكون قد أسعفت في الرد !!

تم تعديل هذه المشاركة بواسطة HGB في 17 أغسطس 2004 في 04:44

banner_60_468.gif

NOTHING IS IMPOSSIBLE

#3
حول تكنولوجيا COM

Technical Lead Developer

My LinkedIn Profile

اللهم قنى شر الجهل و الجهلاء

( اقْتَرَبَ لِلنَّاسِ حِسَابُهُمْ وَهُمْ فِي غَفْلَةٍ مَّعْرِضُونَ ) {الأنبياء:1}

#4

شكراً طارق إبراهيم على اللينك ما تقصر

ومشكور أخوي HGB ،والله تشرحها وكأنك دكتور في الجامعة، عندي سؤال لك ويمكن يكون حشري شوي:

في أي جامعة درست وفي أي تخصص؟ وإذا شفت السؤال يزعجك تجاهلني

#5

Thank you you for explaining com but if you have more information about it plz explain it

thank you very much

allah with you :rolleyes:

#6

ممكن برنامج أطبقه عن ال com ؟؟؟؟؟

#7

الDirectX و الInternet Explorer .

BEng , Electronics and communications.

Embedded systems engineer.

Graphics Programmer

عالم الكومبيوتر هو من لديه المعرفة في علوم الكومبيوتر ، الرياضيات ، هندسة الالكترونيات -احمد صالح

هذا الموضوع مغلق.

مواضيع مشابهة