Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: Загрузка процессора в Win2k Добавлено: 16.01.04 22:58  

Автор вопроса:  Alex(S) | Web-сайт: sapr7.by.ru
Как вывести на форму значение загрузки процессора в Win2k?

Ответить

  Ответы Всего ответов: 1  

Номер ответа: 1
Автор ответа:
 Sharp


Лидер форума

ICQ: 216865379 

Вопросов: 106
Ответов: 9979
 Web-сайт: sharpc.livejournal.com
 Профиль | | #1
Добавлено: 17.01.04 22:06

Кажется так же, как и в 98-м... А в 98-м, например, так:

Private Declare Function RegCloseKey Lib "advapi32.dll" (ByVal hkey As Long) As Long

Private Const HKEY_DYN_DATA = &H80000006

Private Const STANDARD_RIGHTS_ALL = &H1F0000

Private Const READ_CONTROL = &H20000

Private Const STANDARD_RIGHTS_READ = (READ_CONTROL)

Private Const KEY_QUERY_VALUE = &H1

Private Const KEY_SET_VALUE = &H2

Private Const KEY_CREATE_SUB_KEY = &H4

Private Const KEY_ENUMERATE_SUB_KEYS = &H8

Private Const KEY_NOTIFY = &H10

Private Const KEY_CREATE_LINK = &H20

Private Const SYNCHRONIZE = &H100000

Private Const KEY_ALL_ACCESS = ((STANDARD_RIGHTS_ALL Or KEY_QUERY_VALUE Or KEY_SET_VALUE Or KEY_CREATE_SUB_KEY Or KEY_ENUMERATE_SUB_KEYS Or KEY_NOTIFY Or KEY_CREATE_LINK) And (Not SYNCHRONIZE))

Private Const KEY_READ = ((STANDARD_RIGHTS_READ Or KEY_QUERY_VALUE Or KEY_ENUMERATE_SUB_KEYS Or KEY_NOTIFY) And (Not SYNCHRONIZE))

Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)

Private Declare Function SetWindowPos Lib "user32" (ByVal hwnd As Long, ByVal hWndInsertAfter As Long, ByVal x As Long, ByVal y As Long, ByVal cx As Long, ByVal cy As Long, ByVal WFlags As Long) As Long

Dim hkey As Long

Dim dwCPUUsage As Long

Dim lpcbData As Long

Dim bStart As Boolean

Private Sub Form_Load()

SetWindowPos Me.hwnd, -1, 0, 0, 0, 0, 3

End Sub

Private Sub cmdStart_Click()

bStart = Not bStart

If bStart Then

cmdStart.Caption = "&Stop"

If RegOpenKeyEx(HKEY_DYN_DATA, "PerfStats\StartStat", 0, KEY_ALL_ACCESS, hkey) <> 0 Then Exit Sub

lpcbData = 4

RegQueryValueEx hkey, "KERNEL\CPUUsage", 0, 0, dwCPUUsage, lpcbData

RegCloseKey hkey

If RegOpenKeyEx(HKEY_DYN_DATA, "PerfStats\StatData", 0, KEY_READ, hkey) <> 0 Then Exit Sub

Do While bStart

RegQueryValueEx hkey, "KERNEL\CPUUsage", 0, 0, dwCPUUsage, lpcbData

cmdStart.Caption = dwCPUUsage

t1 = Timer: Do While Timer - t1 < 0.5: DoEvents: Loop

Loop

RegCloseKey hkey

If RegOpenKeyEx(HKEY_DYN_DATA, "PerfStats\StopStat", 0, KEY_ALL_ACCESS, hkey) <> 0 Then Exit Sub

lpcbData = 4

RegQueryValueEx hkey, "KERNEL\CPUUsage", 0, 0, dwCPUUsage, lpcbData

RegCloseKey hkey

Else

cmdStart.Caption = "&Start"

Caption = "Stoped..."

End If

End Sub

Private Sub Form_Unload(Cancel As Integer)

If bStart Then cmdStart_Click

End Sub

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам