Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Використання конструктора ManagementObjectSearcher()

Поиск

Цей конструктор входить до класу ManagementObjectSearcher(). Він витягує колекцію керуючих об'єктів відповідно до заданих запитів. Цей клас є однією з найбільш часто використовуваних вихідних точок входу для вилучення відомостей про управління. Наприклад, його можна використовувати для перерахування всіх дисководів, мережевих адаптерів, процесів та інших керуючих об'єктів у системі, або для запиту всіх працюючих мережевих підключень, призупинених служб і т. д. Після створення екземпляр цього класу приймає в якості вихідних даних запит WMI, представлений об'єктом ObjectQuery або його похідними, і при необхідності об'єктом ManagementScope, що представляє простір імен WMI, в якому повинен бути виконаний запит. Примірник може також прийняти додаткові параметри, які містяться в об'єкті EnumerationOptions. При виклику методу Get () для цього об'єкту ManagementObjectSearcher виконує даний запит в заданій області і повертає колекцію керуючих об'єктів, що відповідають запиту, в ManagementObjectCollection.

Якщо для об'єкту ManagementObjectSearcher() задати деякі властивості, його можна буде використовувати для виклику запиту відомостей про управління. Тобто, за допомогою цього конструктора я отримаю доступ до інформації, яка міститься в Win32_PnPEntity. А отже доступлюсь до підключених пристроїв і їх властивостей.

3.2. Розробка граф-схеми алгоритму

При розробці програми, яка дає можливість користувачу переглядати системну інформацію підключених пристроїв я використала конструктор ManagementObjectSearcher(), за допомогою якого i отримала ці відомості. Програмно реалізувується за допомогою двох функцій:

· private void InsertInfo(ref ListView lst) – функція, що витягує з системного реєстру задані властивості.

· private void button1_Click(object sender, EventArgs e) – ця функція виконує виклик функції private void InsertInfo(ref ListView lst), при нажатті відповідної кнопки.

Функцією private void button1_Click, ми викликаємо функцію private void InsertInfo, а вже з її допомогою витягуємо з системного реєстру потрібні нам властивості. Функція private void InsertInfo містить в собі конструктор ManagementObjectSearcher(). З допомогою цього конструктора робиться запит відповідної інформації у системному реєстрі.

Граф-схема алгоритму подана у Додатку А.

Початок роботи «утиліти моніторингу приєднаних пристроїв» забезпечується Блоком 1.

Звернення до функції private void button1_Click відбувається, після нажаття кнопки – Блок 2.

Виклик функції private void InsertInfo, із функції private void button1_Click забезпечується Блоком 3.

Кінець роботи «утиліти моніторингу приєднаних пристроїв» забезпечується Блоком 4.

Розробка інтерфейсу

При розробці графічного інтерфейсу використовуємо платформу.NET Framework.

Створивши новий проект WindowsForms, додаєм потрібні нам елементи з «Панелі елементів» на порожнє вікно а саме ListView і Button( Рис. 3.4.1 ).

Рис. 3.4.1 Вікно з початковими доданими елементами

Додаєм члени до ListView для відображення властивостей(Рис. 3.4.2):

Рис. 3.4.2. Вікно з членами для відображення властивостей

Прописавши відповідні назви у frmMainDesiqner.cs отримуємо робоче вікно програми(рис. 3.4.3):

Рис. 3.4.3. Робоче вікно програми

Тепер робимо інтерфейс приємним, додаємо зображення на кнопку, міняємо колір ListView і написів, міняємо шрифт(Рис. 3.4.4.).

Рис. 3.4.4. Приємне робоче вікно

Вікно готове до розробки програмного коду утиліти.

3.4. Програмна розробка доступу до властивостей

Потрібно отримати доступ до шести властивостей (із завдання). А саме:


1) Name (назва)

Тип даних: рядок

Тип доступу: тільки для читання

Ця властивість успадковується від CIM_ManagedSystemElement.

Програмно реалізовано:

if(PC.Name == "Name") {

if (PC.Value!= null && PC.Value.ToString()!= "") {

device.Name = PC.Value.ToString();

}

else

{

device.Name = "No information";

}

}

Description (опис)

Тип даних: рядок

Тип доступу: тільки для читання

Це властивість успадковується від CIM_ManagedSystemElement.

Програмно реалізовано:

if (PC.Name == "Description") {

if (PC.Value!= null && PC.Value.ToString()!= "") {

device.Description = PC.Value.ToString(); }

else

{

device.Description = "No information";

}

}

3) Manufacturer (виробник)

Тип даних: рядок

Тип доступу: тільки для читання

Програмно реалізовано:

if (PC.Name == "Manufacturer") {

if (PC.Value!= null && PC.Value.ToString()!= "") {

device.Manufacturer = PC.Value.ToString(); }

else

{

device.Manufacturer = "No information";

}

}

4) Service (сервіс)

Тип даних: рядок

Тип доступу: тільки для читання

Найменування служби, яка підтримує відповідний пристрій.

Програмно реалізовано:

if (PC.Name == "Service") {

if (PC.Value!= null && PC.Value.ToString()!= "") {

device.Service = PC.Value.ToString(); }

else

{

device.Service = "No information";

}

}

 



Поделиться:


Последнее изменение этой страницы: 2016-07-11; просмотров: 209; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.15.34.50 (0.006 с.)