لنفترض انك في معهد تدريب به 50 جهاز مثلاً أو لديك اجهزة خدمة ذاتية او نقاط بيع و تريد مراقبتها او حتى تغيير اعداداتها او القيام بأي عملية كما لو كنت أمام الجهاز مباشرة.
هذه السلسلة عن نظام الويندوز و كيف نراقبه و نتحكم به برمجياً
هذه السلسلة عن نظام الويندوز و كيف نراقبه و نتحكم به برمجياً
الويندوز معروف لأغلبنا , النوافذ التي نستخدمها للتعامل مع الملفات و تشغيل البرامج , لوحة التحكم , تعريف الأجهزة
او تعديل الRegistry و مراقبة الCPU او الRAM و الهاردسك. تلك البرامج مجرد واجهات فقط لا تقوم بالعمل الفعلي و انما تتعامل مع interface أو api خلها من يقوم بالعمل الفعلي .
او تعديل الRegistry و مراقبة الCPU او الRAM و الهاردسك. تلك البرامج مجرد واجهات فقط لا تقوم بالعمل الفعلي و انما تتعامل مع interface أو api خلها من يقوم بالعمل الفعلي .
وهذا يعني انه يمكنك عمل أي شيء اذا قمت بتصميم واجهاتك سواء ويب او سطح مكتب و استدعيت من خلاله تلك الapi.
كلامي هنا عام لكن لنقول انك تستطيع عمل 99% من تلك الأشياء هناك اشياء لا تسمح لك ويندوز بالتعامل معها مثل الKernel بسهولة.
كلامي هنا عام لكن لنقول انك تستطيع عمل 99% من تلك الأشياء هناك اشياء لا تسمح لك ويندوز بالتعامل معها مثل الKernel بسهولة.
خذ مثلاً إنشاء الملفات , يمكن ان تنشيء ملف بواسطة الFile Explorer او بواسطة موجه الأوامر CMD او اغلبنا يعرف كيف
ينشأ ملفاً باستخدام لغة برمجة .. جميع ما سبق ذكره يتعامل مع ذلك الAPI ولا ينشأها بنفسه. حتى كلاسات ال.net تستخدم ذلك الapi.
ينشأ ملفاً باستخدام لغة برمجة .. جميع ما سبق ذكره يتعامل مع ذلك الAPI ولا ينشأها بنفسه. حتى كلاسات ال.net تستخدم ذلك الapi.
بما أننا نريد ان نراقب الCPU و الRAM و التي تظهر في الTaskmanger فعلينا ان نعرف الapi التي تستخدمه و هو في هذه الحالة يسمى WMI اختصار Windows Managment Instrumentation و يمكن التعامل معه من خلال برنامج او من خلال Powershell او سكربت VBS. للتحكم حتى بجهاز اخر على الشبكة (صلاحية).
الWMI كما ذكرت هو مجرد api يتيح لك الوصول لشيء اخر هو الCIMOM و الذي سهل للWMI عمله من خلال قاعدة بيانات WMI repository و ما عليك إلا ان تكتب جمل استعلام شبيهه بSQL لتصل لمعلومات الObject الذي تريد. الWMI نفسه عبارة عن Service في الويندوز.
, لاحظ جملة الSQL و انه يتعامل مع الClasses كأنها Tables
ثم يأخذ الObjects منها كأنها Fields. للاطلاع على مجموعة الكلاسات و الObjects التي تحتويها ادخل هذا الرابط.
docs.microsoft.com
ثم يأخذ الObjects منها كأنها Fields. للاطلاع على مجموعة الكلاسات و الObjects التي تحتويها ادخل هذا الرابط.
docs.microsoft.com
الان بحثت و عرفت البيانات التي تريد ان تراقبها , قم بعمل برنامج .net كـ windows service يقرأ البيانات المطلوبة و يقوم بإرسالها
حتى كـjson الى api على جهاز اخر مع اسم كل جهاز و الوقت للتفريق بينها ويخزنها في قاعدة بيانات. هكذا اصبحت لديك بيانات يمكنك ترتيبها و عرضها في dashboard.
حتى كـjson الى api على جهاز اخر مع اسم كل جهاز و الوقت للتفريق بينها ويخزنها في قاعدة بيانات. هكذا اصبحت لديك بيانات يمكنك ترتيبها و عرضها في dashboard.
هذا بالنسبة لنظام الويندوز , لنظام Linux و الأجهزة الاخرى كالRouters سأفرد لها سلسلة اخرى.
ودمتم.
ودمتم.
جاري تحميل الاقتراحات...