تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
Windows Management Instrumentation - WMI
#2
في الدرس السابق ذكرنا ترجمة ومعاني مصطلحت التقنيات المستخدمه في الكود (البسيط) الذي يقوم بجلب سريال الهارد , ولكن هذه المعلومات لا تكفي ولا تشرح بالضبط ما يحدث , لذا سنقوم بعمل تحليل بسيط للكود لكي نستطيع أن نحصل علي عناصر ندخل منها في صلب الموضوع :


كود :
Dim HDinformation As New ManagementObjectSearcher("SELECT * FROM Win32_PhysicalMedia")
Dim HD As ManagementObject
For Each HD In HDinformation.Get()
MsgBox(HD("SerialNumber").ToString())
Next
في السطر الأول من الكود قمنا بانشاء Object من الـ Class ManagementObjectSearcher , وأبسط طريقه للتعامل مع الـ Constructor الخاص بهذه الـ Class هو اعطائها جملة استعلام WMI Query , وفي حالتنا هذه كانت الجملة :

كود :
SELECT * FROM Win32_PhysicalMedia
هذه الجملة تقوم بجلب بيانات من .... ؟؟؟ من ماذا ... ؟؟؟
هذه الجملة تقوم بجلب المعلومات من Class تسمي بـ Win32_PhysicalMedia ....!!! ما هذا الكلام الغريب ؟؟؟ أين توجد هذه الـ Class حيث اني لم أشاهد Class بهذا الاسم أو الشكل الغريب في الـ Framework Class Library , نعم فهي لا توجد داخل الـ FCL وانما توجد داخل الـ CIM , فلقد قلنا أنه يتكون من Classes كائنية التوجه Object-Oriented , وهذه الـ Classes هي التي تحوي المعلومات التي تحدثنا عنها , اذن لقد بدأت صورة الـ CIM تتضح لمن لم يفهمها من الدرس الأول ,

ولكن حتي الآن لم نفهم باقي الكود وكيف يتم استخراج تلك المعلومات من هذه الفصائل عن طريق الـ WQL , ولماذا استخدمنا الـ For Each ,
في السطر الثاني من الكود قمنا بتعريف Object من الـ Class ManagementObject , وما علاقة هذا بالموضوع ؟؟؟ سنعرف السبب ,
في السطر الثالث قمنا بعمل For Each Loop للحصول علي عناصر الـ Collection التي تعود بها الـ Function Get الخاصه بالعنصر HDinformation وهذه العناصر من النوع ManagementObject , آه لذلك قمنا بتعريف العنصر HD من الـ Class ManagementObject ,
الآن عن طريق الـ For Each Loop يمكن الحصول علي البيانات والمعلومات التي تعود بها جملة الـ WQL Select , وفي السطر الموجود داخل الـ Loop قمنا بوضع الداله التي تعود بسريال الهارد ديسك بعد تمرير اسم الخاصيه التي نريد أن نعرف معلومات عنها , خاصيه هل تقول خاصيه ...؟؟؟
نعم خاصيه لأنه توجد خصائص لهذه الـ Classes التي تحتوي علي البيانات وهذا ما سنتحدث في الدرس القادم ان شاء الله ...,,,

أرجو أن تكون الصوره قد اتضحت قليلا , بعد شرح الكود
}}}
تم الشكر بواسطة:


الردود في هذا الموضوع
Windows Management Instrumentation - WMI - بواسطة Raggi Tech - 01-10-12, 08:06 PM
Windows Management Instrumentation - WMI - بواسطة Raggi Tech - 01-10-12, 08:07 PM
Windows Management Instrumentation - WMI - بواسطة Raggi Tech - 01-10-12, 08:07 PM
Windows Management Instrumentation - WMI - بواسطة Raggi Tech - 01-10-12, 08:09 PM
Windows Management Instrumentation - WMI - بواسطة Raggi Tech - 01-10-12, 08:09 PM


التنقل السريع :


يقوم بقرائة الموضوع: