Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » C/C++ - Как совместить WMI с моей программой?

Ответить
Настройки темы
C/C++ - Как совместить WMI с моей программой?

Аватара для Virtyaluk

Старожил


Сообщения: 163
Благодарности: 23


Конфигурация

Профиль | Сайт | Отправить PM | Цитировать


Здравствуйте,
помогите решить одну проблему
есть код:
Код: Выделить весь код
using System;
using System.Management;
using System.Windows.Forms;

namespace WMISample
{
    public class MyWMIQuery
    {
        public static void Main()
        {
            try
            {
                ManagementObjectSearcher searcher =  new ManagementObjectSearcher("root\\CIMV2", "SELECT * FROM Win32_OperatingSystem"); 
                foreach (ManagementObject queryObj in searcher.Get())
                {
                    Console.WriteLine("OSArchitecture: {0}", queryObj["OSArchitecture"]);
                    Console.WriteLine("SystemDirectory: {0}", queryObj["SystemDirectory"]);
                }
            }
            catch (ManagementException e)
            {
                MessageBox.Show("An error occurred while querying for WMI data: " + e.Message);
            }
        }
    }
}
нужно его функциональную часть интегрировать в мою программу т.е. нужно совместить оба кода в один!
моя программа (просто форма на которой две label):
Код: Выделить весь код
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Management;
using System.Text;
using System.Windows.Forms;

namespace WindowsFormsApplication4
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();            
        }
        private void Form1_Load(object sender, EventArgs e)
        {
        }
        private void label1_Click(object sender, EventArgs e)
        {
        }
        private void label2_Click(object sender, EventArgs e)
        {
        }
    }
}
в результате, после запуска готового приложения, на label1 и label2 должна появляться информация из переменных OSArchitecture и SystemDirectory

как совместить эти коды?
уже лепил как только можно - не выходит и все...
помогите с кодом.
Жду помощи.

Отправлено: 20:23, 27-03-2010

 

Аватара для Delirium

Ветеран


Сообщения: 5624
Благодарности: 936

Профиль | Отправить PM | Цитировать


Код: Выделить весь код
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Management;
using System.Text;
using System.Windows.Forms;

namespace WindowsFormsApplication4
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();            
        }
        private void Form1_Load(object sender, EventArgs e)
        {
try
            {
                ManagementObjectSearcher searcher =  new ManagementObjectSearcher("root\\CIMV2", "SELECT * FROM Win32_OperatingSystem"); 
                foreach (ManagementObject queryObj in searcher.Get())
                {
label1.Text      +=queryObj["OSArchitecture"].ToString() + System.Environment.NewLine;
label2.Text      +=queryObj["SystemDirectory"].ToString() + System.Environment.NewLine;           
                }
            }
            catch (ManagementException e)
            {
                MessageBox.Show("An error occurred while querying for WMI data: " + e.Message);
            }
        }
        private void label1_Click(object sender, EventArgs e)
        {
        }
        private void label2_Click(object sender, EventArgs e)
        {
        }
    }
Вместо Label1 лучше использовать TextBox и в его свойствах поставить Multiline, чтобы текст лучше видно было.

-------

Пройденные курсы:
[Microsoft №10174 Sharepoint], [SharePoint]
Мои проекты:[CheckAdmins], [NetSend7], [System Uptime], [Remote RAdmin LogViewer],[Netdom GDI], [Holidays - напоминалка о днях рождения]

А я офис-гуру :)


Отправлено: 04:26, 29-03-2010 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для Virtyaluk

Старожил


Сообщения: 163
Благодарности: 23

Профиль | Сайт | Отправить PM | Цитировать


1 ошибка
"Не удалось найти имя типа или пространства имен "EventArgs" (пропущена директива using или ссылка на сборку?)"
если в место простого EventArgs ПИШУ System.EventArgs (в строке private void Form1_Load)
так предыдущая ошибка исчезает, но появляются новые:

"Не удалось найти имя типа или пространства имен "Form1" (пропущена директива using или ссылка на сборку?)"
"Не удалось найти имя типа или пространства имен "ManagementObjectSearcher" (пропущена директива using или ссылка на сборку?)"
"Не удалось найти имя типа или пространства имен "ManagementObject" (пропущена директива using или ссылка на сборку?)"
что и где не так??

Отправлено: 15:34, 29-03-2010 | #3


Аватара для Delirium

Ветеран


Сообщения: 5624
Благодарности: 936

Профиль | Отправить PM | Цитировать


Virtyaluk, пишу ОДИН раз в ответ на все ваши темы и вопросы по ICQ:
Купите/скачайте книгу по C#, или пройдите БЕСПЛАТНЫЕ курсы по данному языку программирования - INTUIT.ru и вам все станет понятно.
Цитата Virtyaluk:
Не удалось найти имя типа или пространства имен "Form1" »
Не была добавлена форма в проект.
Цитата Virtyaluk:
Не удалось найти имя типа или пространства имен "ManagementObjectSearcher" »
Не добавлена зависимость на данное пространство.


P.S. Вы не понимаете синтаксиса и структуры C#, а уже пытаетесь создавать какие то серьезные проекты. Мой вам совет - почитайте документацию, вопросов поубавится на порядок.

-------

Пройденные курсы:
[Microsoft №10174 Sharepoint], [SharePoint]
Мои проекты:[CheckAdmins], [NetSend7], [System Uptime], [Remote RAdmin LogViewer],[Netdom GDI], [Holidays - напоминалка о днях рождения]

А я офис-гуру :)

Это сообщение посчитали полезным следующие участники:

Отправлено: 01:11, 30-03-2010 | #4



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » C/C++ - Как совместить WMI с моей программой?

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
F6, raid, unattended XPsp2 - как совместить несовместимое?.. manuel Автоматическая установка Windows 2000/XP/2003 46 20-03-2010 16:48
подскажте как совместить программу для изменения интерфейса с установкой windows krazy Автоматическая установка Windows 2000/XP/2003 4 18-06-2009 13:07
Как совместить XPru & XPde? kwiki Автоматическая установка Windows 2000/XP/2003 3 25-08-2007 23:43
Как совместить видео и звук? ILIYA21 Видео и аудио: обработка и кодирование 12 30-04-2007 14:34
Как мне изменить неправильную информацию о моей программе? sv2k О сайте и форуме 1 05-12-2006 19:08




 
Переход