Получить числовое значение тактовой частоты процессора в определенный момент времени - VB

Узнай цену своей работы

Формулировка задачи:

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

Решение задачи: «Получить числовое значение тактовой частоты процессора в определенный момент времени»

textual
Листинг программы
  1. Option Explicit
  2.  
  3. Private Type SYSTEM_INFO
  4.     dwOemID                     As Long
  5.     dwPageSize                  As Long
  6.     lpMinimumApplicationAddress As Long
  7.     lpMaximumApplicationAddress As Long
  8.     dwActiveProcessorMask       As Long
  9.     dwNumberOrfProcessors       As Long
  10.     dwProcessorType             As Long
  11.     dwAllocationGranularity     As Long
  12.     dwReserved                  As Long
  13. End Type
  14.  
  15. Private Type PROCESSOR_POWER_INFORMATION
  16.     Number                      As Long
  17.     MaxMhz                      As Long
  18.     CurrentMhz                  As Long
  19.     MhzLimit                    As Long
  20.     MaxIdleState                As Long
  21.     CurrentIdleState            As Long
  22. End Type
  23.  
  24. Private Declare Function CallNtPowerInformation Lib "PowrProf" (ByVal InformationLevel As Long, lpInputBuffer As Any, ByVal nInputBufferSize As Long, lpOutputBuffer As Any, ByVal nOutputBufferSize As Long) As Long
  25. Private Declare Sub GetSystemInfo Lib "kernel32" (lpSystemInfo As SYSTEM_INFO)
  26.  
  27. Private Const ProcessorInformation  As Long = 11
  28.  
  29. Private Sub Form_Click()
  30.     Dim si  As SYSTEM_INFO
  31.     Dim p() As PROCESSOR_POWER_INFORMATION
  32.     Dim i   As Long
  33.    
  34.     GetSystemInfo si
  35.    
  36.     ReDim p(si.dwNumberOrfProcessors - 1)
  37.    
  38.     CallNtPowerInformation ProcessorInformation, ByVal 0&, 0, p(0), Len(p(0)) * si.dwNumberOrfProcessors
  39.    
  40.     Cls
  41.    
  42.     For i = 0 To si.dwNumberOrfProcessors - 1
  43.         Print "Processor: " & p(i).Number
  44.         Print "Current: " & p(i).CurrentMhz & " Mhz"
  45.     Next
  46.    
  47. End Sub

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

9   голосов , оценка 4.111 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы