Аватар для Kill100
434 / 299 / 82
Регистрация: 11.12.2010
Сообщений: 1,209
.NET 4.x

[C#+WMI]Можно ли через WMI узнать температуру процессора и ядер?

21.08.2011, 19:14. Показов 6510. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
[C#+WMI]Можно ли через WMI узнать температуру процессора и ядер?
Щас лопачу сайты вожусь но русскоязычной документации по WMI нету
А тем более по таким вопросам.
Этот код выводит смарты но нечего близкого к показателям эвереста и других прог нету.
C#
1
2
3
4
5
6
7
8
9
10
11
            ManagementObjectSearcher searcher = new ManagementObjectSearcher(@"root\WMI", "SELECT * FROM MSStorageDriver_ATAPISmartData WHERE Active=True");
            foreach (ManagementObject obj in searcher.Get())
            {
                byte[] vendorSpec = obj["VendorSpecific"] as byte[];
                for (int i = 0; i < 362; i++)
                    if (vendorSpec != null)
                    {
                        listBox1.Items.Add(((5.0 / 9.0) * (vendorSpec[i]-32)).ToString());
                    }
 
            }
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
21.08.2011, 19:14
Ответы с готовыми решениями:

"Отказано в доступе" при попытке получить температуру процессора через WMI
Здравствуйте. Пытаюсь получить температуру процессора, а мне выбивает исключение. ManagementObjectSearcher searcher = new...

Подключение к удаленному компьютеру через WMI
вот код, который использую: ConnectionOptions options = new ConnectionOptions(); options.Username =...

Получить информацию о оперативной памяти через wmi
Всем привет! Подскажите. Как можно узнать сколько оперативной памяти свободно через WMI? Как узнать сколько всего памяти я разобрался. А...

1
Заблокирован
21.08.2011, 20:01
Цитата Сообщение от Kill100 Посмотреть сообщение
но нечего близкого к показателям эвереста и других прог нету
Вот посмотри
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
 using System.Management;// добавить ссылку
 
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
 
            this.comboBox1.Items.AddRange(new object[] {
            "Win32_1394Controller",
            "Win32_1394ControllerDevice",
            "Win32_BaseBoard",
            "Win32_Battery",
            "Win32_BIOS",
            "Win32_Bus",
            "Win32_CDROMDrive",
            "Win32_CIMLogicalDeviceCIMDataFile",
            "Win32_DeviceBus",
            "Win32_DeviceMemoryAddress",
            "Win32_DeviceSettings",
            "Win32_DisplayConfiguration",
            "Win32_DisplayControllerConfiguration",
            "Win32_DMAChannel",
            "Win32_DriverVXD",
            "Win32_FloppyController",
            "Win32_FloppyDrive",
            "Win32_HeatPipe",
            "Win32_IDEController",
            "Win32_IDEControllerDevice",
            "Win32_InfraredDevice",
            "Win32_IRQResource",
            "Win32_Keyboard",
            "Win32_MotherboardDevice",
            "Win32_OnBoardDevice",
            "Win32_PCMCIAController",
            "Win32_PNPAllocatedResource",
            "Win32_PnPDevice",
            "Win32_PnPEntity",
            "Win32_PointingDevice",
            "Win32_PortableBattery",
            "Win32_PortConnector",
            "Win32_PortResource",
            "Win32_POTSModem",
            "Win32_POTSModemToSerialPort",
            "Win32_PowerManagementEvent",
            "Win32_Printer",
            "Win32_PrinterConfiguration",
            "Win32_PrinterController",
            "Win32_PrinterDriverDll",
            "Win32_PrinterSetting",
            "Win32_PrinterShare",
            "Win32_PrintJob",
            "Win32_Processor",
            "Win32_SCSIController",
            "Win32_SCSIControllerDevice",
            "Win32_SerialPort",
            "Win32_SerialPortConfiguration",
            "Win32_SerialPortSetting",
            "Win32_SMBIOSMemory",
            "Win32_SoundDevice",
            "Win32_TemperatureProbe",
            "Win32_USBController",
            "Win32_USBControllerDevice",
            "Win32_VideoConfiguration",
            "Win32_VideoController",
            "Win32_VideoSettings",
            "Win32_VoltageProbe"});
            // comboBox1.SelectedItem = "Win32_Processor";
 
            comboBox1.SelectedIndexChanged += new EventHandler(comboBox1_SelectedIndexChanged);
        }
 
        private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
        {
            string result = string.Empty;
            ManagementObjectSearcher searcher = new ManagementObjectSearcher("select * from " + comboBox1.SelectedItem.ToString());
            try
            {
                foreach (ManagementObject share in searcher.Get())
                {
 
                    foreach (PropertyData PC in share.Properties)
                    {
 
                        if (PC.Value != null && PC.Value.ToString() != "")
                        {
                            switch (PC.Value.GetType().ToString())
                            {
                                case "System.String[]":
                                    string[] str = (string[])PC.Value;
 
                                    string str2 = "";
                                    foreach (string st in str)
                                        str2 += st + " ";
 
                                    result += share["Name"].ToString() + " -> " + str2 + Environment.NewLine;
 
 
                                    break;
                                case "System.UInt16[]":
                                    ushort[] shortData = (ushort[])PC.Value;
 
 
                                    string tstr2 = "";
                                    foreach (ushort st in shortData)
                                        tstr2 += st.ToString() + " ";
 
                                    result += share["Name"].ToString() + " -> " + tstr2 + Environment.NewLine;
 
 
                                    break;
 
                                default:
                                    result += share["Name"].ToString() + " -> " + PC.Value.ToString() + Environment.NewLine;
 
                                    break;
                            }
                        }
 
 
                    }
                }
                MessageBox.Show(result);
            }
            catch
            {
 
            }
 
        }
 
    }
Добавлено через 56 секунд
Но с температурой походу облом(
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
21.08.2011, 20:01
Помогаю со студенческими работами здесь

Как управлять службами Windows через WMI?
Помогите написать Windows-форму (проект Windows Form Application), которая выводит список всех служб с помощью элементов WMI-таблицы...

Атрибуты SMART через запрос WMI на языке C#
Здравствуйте, передо мной возникла задача: написание программы, которая оценивает техническое состояние жёсткого диска. Я выяснил, что это...

Можно ли в данном случае сделать лаконичней ? Сбор данных WMI
Приходится собирать данные о машине. Я использую WMI. Приходится выводить их на консоль. И также в файл. Вопрос, можно ли сделать (на...

Как узнать температуру, мощность процессора, название видеокарты и количество оперативки
Как узнать температуру, можность процессора, название видеокарты и кол-во оперативки?

wmi
модель процессора: производителя, название и тип, количество процессоров, его тактовую частоту, а так же версию BIOS и производителя...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

Новые блоги и статьи
Интеграция Hangfire с RabbitMQ в проектах C#.NET
stackOverflow 18.04.2025
Разработка современных . NET-приложений часто требует выполнения задач "за кулисами". Это может быть отправка email-уведомлений, генерация отчётов, обработка загруженных файлов или синхронизация. . .
Построение эффективных запросов в микросервисной архитектуре: Стратегии и практики
ArchitectMsa 18.04.2025
Микросервисная архитектура принесла с собой много преимуществ — возможность независимого масштабирования сервисов, технологическую гибкость и четкое разграничение ответственности. Но как часто бывает. . .
Префабы в Unity: Использование, хранение, управление
GameUnited 18.04.2025
Префабы — один из краеугольных элементов разработки игр в Unity, представляющий собой шаблоны объектов, которые можно многократно использовать в различных сценах. Они позволяют создавать составные. . .
RabbitMQ как шина данных в интеграционных решениях на C# (с MassTransit)
stackOverflow 18.04.2025
Современный бизнес опирается на множество специализированных программных систем, каждая из которых заточена под решение конкретных задач. CRM управляет отношениями с клиентами, ERP контролирует. . .
Типы в TypeScript
run.dev 18.04.2025
TypeScript представляет собой мощное расширение JavaScript, которое добавляет статическую типизацию в этот динамический язык. В JavaScript, где переменная может свободно менять тип в процессе. . .
Погружение в Kafka: Концепции и примеры на C# с ASP.NET Core
stackOverflow 18.04.2025
Apache Kafka изменила подход к обработке данных в распределенных системах. Эта платформа потоковой передачи данных выходит далеко за рамки обычной шины сообщений, предлагая мощные возможности,. . .
Коммуникация в реальном времени с SignalR в C# на примере создания чата
UnmanagedCoder 17.04.2025
Современный веб стремительно эволюционирует от статичных страниц к динамичным приложениям, где пользователи ожидают мгновенной реакции на свои действия. Представим, что вы отправляете сообщение. . .
Реализация CQRS с MediatR на C# .NET
stackOverflow 17.04.2025
Современная разработка программного обеспечения постоянно ищет пути повышения эффективности организации кода. Архитектурные паттерны появляются, эволюционируют, и те, что проявляют свою. . .
Verilog и интеллектуальная собственность - "глазами" обученной LM модели.
Hrethgir 17.04.2025
В сети встречаются участники, заявляющие что код на Verilog ни о чём не говорит. Но вот патентная практика на самом деле показывает обратное ими утверждаемому. То-есть код на Verilog включают в. . .
Свап-файл дополнительно к разделу (если вдруг не хватает или не создан)
jigi33 17.04.2025
ПОДКЛЮЧЕНИЕ ДОПОЛНИТЕЛЬНОГО SWAP ПРОСТРАНСТВА, Т. О. , РАСШИРЕНИЕ ЕГО РАЗМЕРА В Linux можно использовать как раздел подкачки (swap), так и файл подкачки (swap-файл). Чтобы создать swap-файл вместо. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru