Температура процессора

Язык Visual Basic на платформе .NET.

Модераторы: Ramzes, Sebas

Роман-вб
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 520
Зарегистрирован: 04.04.2006 (Вт) 9:40
Откуда: Средняя полоса

Температура процессора

Сообщение Роман-вб » 12.04.2006 (Ср) 21:30

Как определить температуру процессора на VB8?
P.S. Пользовался поиском -- безрезультатно. Заранее спасибо.
Жить ещё 2 недели, работы на 8 лет, но я докажу на деле, на что способен аскет!

Sebas
Неуловимый Джо
Неуловимый Джо
Аватара пользователя
 
Сообщения: 3626
Зарегистрирован: 12.02.2002 (Вт) 17:25
Откуда: столько наглости такие вопросы задавать

Сообщение Sebas » 13.04.2006 (Чт) 8:46

Если бы ты ДЕЙСТВИТЕЛЬНО пользовался поиском? то знал бы что WMI, правда не во всех случаях. Так как требуется драйверная поддержка производителя.
- Я никогда не понимал, почему они приходят ко мне чтобы умирать?

sebas<-@->mail.ru

Роман-вб
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 520
Зарегистрирован: 04.04.2006 (Вт) 9:40
Откуда: Средняя полоса

Сообщение Роман-вб » 13.04.2006 (Чт) 20:35

Sebas
Дело в том, что по данной теме я не имею ни малейшего представления. От меня требуется определить температуру процессора. Есть вариант сделать это с пом. "ассемблерных вставок" на долбаном Паскале. А что такое эти вставки, я понятия не имею. Вот думаю написать DLL на VB.
Жить ещё 2 недели, работы на 8 лет, но я докажу на деле, на что способен аскет!

Sebas
Неуловимый Джо
Неуловимый Джо
Аватара пользователя
 
Сообщения: 3626
Зарегистрирован: 12.02.2002 (Вт) 17:25
Откуда: столько наглости такие вопросы задавать

Сообщение Sebas » 14.04.2006 (Пт) 7:56

Роман-вб писал(а):Sebas
Дело в том, что по данной теме я не имею ни малейшего представления. .


Перечитай моё первое предложение.
Неужели так трудно забить в гугл WMI? Или просто залезть на microsoft.com в ScriptCenter
- Я никогда не понимал, почему они приходят ко мне чтобы умирать?

sebas<-@->mail.ru

Роман-вб
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 520
Зарегистрирован: 04.04.2006 (Вт) 9:40
Откуда: Средняя полоса

Сообщение Роман-вб » 15.04.2006 (Сб) 15:11

Нашёл всё кроме t°
Жить ещё 2 недели, работы на 8 лет, но я докажу на деле, на что способен аскет!

Роман-вб
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 520
Зарегистрирован: 04.04.2006 (Вт) 9:40
Откуда: Средняя полоса

Сообщение Роман-вб » 17.04.2006 (Пн) 14:08

Код: Выделить всё
Friend Class Form1
    Inherits System.Windows.Forms.Form
    Private Const LVM_FIRST As Integer = &H1000S
    Private Const LVM_SETCOLUMNWIDTH As Integer = (LVM_FIRST + 30)
    Private Const LVSCW_AUTOSIZE As Integer = -1
    Private Const LVSCW_AUTOSIZE_USEHEADER As Integer = -2
    Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Integer, ByVal wMsg As Integer, ByVal wParam As Integer, ByRef lParam As String) As Integer


    Private Sub Form1_Load(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles MyBase.Load

        With ListView1
            .Items.Clear()
            .Columns.Clear()
            .Columns.Add("DevID")
            .Columns.Add("Avail")
            .Columns.Add("AddrWd")
            .Columns.Add("Status")
            .Columns.Add("SpdNow")
            .Columns.Add("SpdMax")
            .Columns.Add("L2Siz")
            .Columns.Add("L2Spd")
            .Columns.Add("VoltCap")
            .Columns.Add("Name")

            .View = System.Windows.Forms.View.Details

        End With

        Command1.Text = "Get Adapter Info"

    End Sub


    Private Sub Command1_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles Command1.Click

        ListView1.Items.Clear()
        Call wmiProcessorInfo()
        Call lvAutosizeControl(ListView1)

    End Sub


    Private Sub lvAutosizeControl(ByRef lv As System.Windows.Forms.ListView)

        Dim col2adjust As Integer

        '/* Size each column based on the maximum of
        '/* EITHER the columnheader text width, or,
        '/* if the items below it are wider, the
        '/* widest list item in the column
        For col2adjust = 0 To lv.Columns.Count - 1

            Call SendMessage(lv.Handle.ToInt32, LVM_SETCOLUMNWIDTH, col2adjust, LVSCW_AUTOSIZE_USEHEADER)

        Next

    End Sub


    Private Sub wmiProcessorInfo()

        Dim cpuSet As WbemScripting.SWbemObjectSet
        Dim cpu As WbemScripting.SWbemObject
        Dim itmx As System.Windows.Forms.ListViewItem

        cpuSet = GetObject("winmgmts:{impersonationLevel=impersonate}").InstancesOf("Win32_Processor")
        On Error Resume Next
        For Each cpu In cpuSet

            itmx = ListView1.Items.Add(cpu.DeviceID)
            If itmx.SubItems.Count > 1 Then
                itmx.SubItems(1).Text = cpu.Availability
            Else
                itmx.SubItems.Insert(1, New System.Windows.Forms.ListViewItem.ListViewSubItem(Nothing, cpu.Availability))
            End If
            If itmx.SubItems.Count > 2 Then
                itmx.SubItems(2).Text = cpu.AddressWidth
            Else
                itmx.SubItems.Insert(2, New System.Windows.Forms.ListViewItem.ListViewSubItem(Nothing, cpu.AddressWidth))
            End If
            If itmx.SubItems.Count > 3 Then
                itmx.SubItems(3).Text = cpu.CpuStatus
            Else
                itmx.SubItems.Insert(3, New System.Windows.Forms.ListViewItem.ListViewSubItem(Nothing, cpu.CpuStatus))
            End If
            If itmx.SubItems.Count > 4 Then
                itmx.SubItems(4).Text = cpu.CurrentClockSpeed
            Else
                itmx.SubItems.Insert(4, New System.Windows.Forms.ListViewItem.ListViewSubItem(Nothing, cpu.CurrentClockSpeed))
            End If
            If itmx.SubItems.Count > 5 Then
                itmx.SubItems(5).Text = cpu.MaxClockSpeed
            Else
                itmx.SubItems.Insert(5, New System.Windows.Forms.ListViewItem.ListViewSubItem(Nothing, cpu.MaxClockSpeed))
            End If
            If itmx.SubItems.Count > 6 Then
                itmx.SubItems(6).Text = cpu.L2CacheSize
            Else
                itmx.SubItems.Insert(6, New System.Windows.Forms.ListViewItem.ListViewSubItem(Nothing, cpu.L2CacheSize))
            End If

            If itmx.SubItems.Count > 7 Then
                itmx.SubItems(7).Text = cpu.L2CacheSpeed
            Else
                itmx.SubItems.Insert(7, New System.Windows.Forms.ListViewItem.ListViewSubItem(Nothing, cpu.L2CacheSpeed))
            End If
            If itmx.SubItems.Count > 8 Then
                itmx.SubItems(8).Text = cpu.VoltageCaps
            Else
                itmx.SubItems.Insert(8, New System.Windows.Forms.ListViewItem.ListViewSubItem(Nothing, cpu.VoltageCaps))
            End If
            If itmx.SubItems.Count > 9 Then
                itmx.SubItems(9).Text = cpu.Name
            Else
                itmx.SubItems.Insert(9, New System.Windows.Forms.ListViewItem.ListViewSubItem(Nothing, cpu.Name))
            End If

        Next cpu

    End Sub
End Class

Вроде как t° не выдаёт. Может кто знает... :roll:
Жить ещё 2 недели, работы на 8 лет, но я докажу на деле, на что способен аскет!

Sebas
Неуловимый Джо
Неуловимый Джо
Аватара пользователя
 
Сообщения: 3626
Зарегистрирован: 12.02.2002 (Вт) 17:25
Откуда: столько наглости такие вопросы задавать

Сообщение Sebas » 18.04.2006 (Вт) 9:30

strComputer = "."
Set colTempProbe = GetObject("Winmgmts:"_
& "{impersonationLevel=impersonate}!\\"_
& strComputer & "\root\cimv2")._
InstancesOf("Win32_TemperatureProbe")
Num = 0
For Each obj In colTempProbe
WScript.Echo obj.Name & VBNewLine _
& obj.DeviceID & VBNewLine _
& obj.Status & VBNewLine _
& obj.Resolution & VBNewLine _
& obj.Tolerance & VBNewLine _
& obj.Accuracy
Num = Num +1
Next
If Num = 0 Then
WScript.Echo "No temperature probe data"
End If
- Я никогда не понимал, почему они приходят ко мне чтобы умирать?

sebas<-@->mail.ru

Роман-вб
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 520
Зарегистрирован: 04.04.2006 (Вт) 9:40
Откуда: Средняя полоса

Сообщение Роман-вб » 18.04.2006 (Вт) 10:52

Sebas
Так это я понимаюVBScript. Или нет? Объясни уж, куда это писать.
Жить ещё 2 недели, работы на 8 лет, но я докажу на деле, на что способен аскет!

Ramzes
Скромный человек
Скромный человек
Аватара пользователя
 
Сообщения: 5004
Зарегистрирован: 12.04.2003 (Сб) 11:59
Откуда: Из гробницы :)

Сообщение Ramzes » 18.04.2006 (Вт) 11:04

Роман-вб
Это вообще на Delphi :roll:

Роман-вб
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 520
Зарегистрирован: 04.04.2006 (Вт) 9:40
Откуда: Средняя полоса

Сообщение Роман-вб » 18.04.2006 (Вт) 11:11

Ramzes
Да, да, да. Ну и кто же флудит где ни попади? :!: Украинский вопрос закрыт.
Жить ещё 2 недели, работы на 8 лет, но я докажу на деле, на что способен аскет!

Ramzes
Скромный человек
Скромный человек
Аватара пользователя
 
Сообщения: 5004
Зарегистрирован: 12.04.2003 (Сб) 11:59
Откуда: Из гробницы :)

Сообщение Ramzes » 18.04.2006 (Вт) 11:27

Роман-вб
Тебе самому то не кажется глупым вопрос куда писать? и на чем это? мне например кажется. Напиши кому нить на мыло что ли...может сработает.

keks-n
Доктор VB наук
Доктор VB наук
Аватара пользователя
 
Сообщения: 2509
Зарегистрирован: 19.09.2005 (Пн) 17:17
Откуда: г. Москва

Сообщение keks-n » 21.04.2006 (Пт) 15:59

Роман-вб
Замени "WScript.Echo " на "Msgbox " или "Text1.Text=Text1.Text+vbCrLf+", вставляй в VB6(в восьмом должно работать, но если нет, то Code Upgrade Wizard тебе в помощь) и радуйся жизни.
Изображение

Роман-вб
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 520
Зарегистрирован: 04.04.2006 (Вт) 9:40
Откуда: Средняя полоса

Сообщение Роман-вб » 21.04.2006 (Пт) 16:19

keks-n
Эта порблема уж решена (но всё равно спасибо)
Sebas
Постоянно выполняется вот это:
Код: Выделить всё
If Num = 0 Then
WScript.Echo "No temperature probe data"
End If

и я остаюсь "без температуры" :)
Жить ещё 2 недели, работы на 8 лет, но я докажу на деле, на что способен аскет!

Sebas
Неуловимый Джо
Неуловимый Джо
Аватара пользователя
 
Сообщения: 3626
Зарегистрирован: 12.02.2002 (Вт) 17:25
Откуда: столько наглости такие вопросы задавать

Сообщение Sebas » 21.04.2006 (Пт) 18:42

pyзначит не стоит WMI провайдеров от поставщика, на ноуте, у меня два датчика находит, а на настольнике - ничего.
- Я никогда не понимал, почему они приходят ко мне чтобы умирать?

sebas<-@->mail.ru

Роман-вб
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 520
Зарегистрирован: 04.04.2006 (Вт) 9:40
Откуда: Средняя полоса

Сообщение Роман-вб » 21.04.2006 (Пт) 18:48

Sebas
Да-а-а. Печально. Может ещё чего-нибудь посоветуете?
Жить ещё 2 недели, работы на 8 лет, но я докажу на деле, на что способен аскет!

PUNK-GRUNGER
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 145
Зарегистрирован: 10.06.2004 (Чт) 14:22
Откуда: Украина, Николаев

Сообщение PUNK-GRUNGER » 26.04.2006 (Ср) 12:59

Randomize()
txtTempreture = CInt(Rnd*100)

Два раза подряд не запускать, может разные значение выдавать :wink:

Роман-вб
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 520
Зарегистрирован: 04.04.2006 (Вт) 9:40
Откуда: Средняя полоса

Сообщение Роман-вб » 26.04.2006 (Ср) 18:55

PUNK-GRUNGER
Ну ты крут.
Жить ещё 2 недели, работы на 8 лет, но я докажу на деле, на что способен аскет!

Sebas
Неуловимый Джо
Неуловимый Джо
Аватара пользователя
 
Сообщения: 3626
Зарегистрирован: 12.02.2002 (Вт) 17:25
Откуда: столько наглости такие вопросы задавать

Сообщение Sebas » 26.04.2006 (Ср) 21:12

Роман-вб

попробуй прогнуться и испытать чувство... Дружеского ЮМОРА.
и внести в него своё я.

Огрызаясь, ты напоминаешь девочку 13 лет.

ЗЫ: уверяю, без обид, а надеясь на креатив!
- Я никогда не понимал, почему они приходят ко мне чтобы умирать?

sebas<-@->mail.ru

Роман-вб
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 520
Зарегистрирован: 04.04.2006 (Вт) 9:40
Откуда: Средняя полоса

Сообщение Роман-вб » 26.04.2006 (Ср) 21:18

Sebas
С юмором у меня всё в порядке.
P.S. Sebas, а ты наверное на досуге с маленькими девочками развлекаешься :lol:
Жить ещё 2 недели, работы на 8 лет, но я докажу на деле, на что способен аскет!

Sebas
Неуловимый Джо
Неуловимый Джо
Аватара пользователя
 
Сообщения: 3626
Зарегистрирован: 12.02.2002 (Вт) 17:25
Откуда: столько наглости такие вопросы задавать

Сообщение Sebas » 26.04.2006 (Ср) 22:04

Роман-вб писал(а):Sebas
С юмором у меня всё в порядке.
P.S. Sebas, а ты наверное на досуге с маленькими девочками развлекаешься :lol:


))) тебе не понять) маленькие девочки рулят неимоверно!
- Я никогда не понимал, почему они приходят ко мне чтобы умирать?

sebas<-@->mail.ru

PUNK-GRUNGER
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 145
Зарегистрирован: 10.06.2004 (Чт) 14:22
Откуда: Украина, Николаев

Сообщение PUNK-GRUNGER » 26.04.2006 (Ср) 22:47

Все таки маленькие девочки лучше, чем маленькие мальчики :)
Роман-вб, ты извини если чо. Не удержался :)

Wild VB Code for Food
Постоялец
Постоялец
 
Сообщения: 387
Зарегистрирован: 16.06.2005 (Чт) 17:34
Откуда: ты, друг? =)) Сообщений: 1234

Сообщение Wild VB Code for Food » 27.04.2006 (Чт) 13:21

Температуру проца можно узнать через обращение к драйверу мамы (неуверен) или через биос прерывание (тоже неуверен)....

http://www.rsdn.ru/Forum/Message/930538.htm
Лучше думать чем жевать.

Роман-вб
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 520
Зарегистрирован: 04.04.2006 (Вт) 9:40
Откуда: Средняя полоса

Сообщение Роман-вб » 27.04.2006 (Чт) 21:21

Wild VB Code for Food
Спасибо, я посмотрю!

PUNK-GRUNGER писал(а):Все таки маленькие девочки лучше, чем маленькие мальчики :)
Роман-вб, ты извини если чо. Не удержался :)


Понятно :lol: Не удержался поделиться собственным опытом :lol:
Жить ещё 2 недели, работы на 8 лет, но я докажу на деле, на что способен аскет!


Вернуться в Visual Basic .NET

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 84

    TopList