Posts: 85
Threads: 16
Joined: Aug 2009
Is there a dialog that is able to show the current cpu usage ?
Like it'll show where u want it to show and itll be constantly updating !
If this is possible, may i see an example, refrence etc.
Thanks
Posts: 12,147
Threads: 143
Joined: Dec 2002
Function dlg_cpu
\Dialog_Editor
function# hDlg message wParam lParam
if(hDlg) goto messages
if(!ShowDialog("dlg_cpu" &dlg_cpu 0)) ret
;BEGIN DIALOG
;0 "" 0x90C80AC8 0x0 0 0 223 135 "Dialog"
;1 Button 0x54030001 0x4 120 116 48 14 "OK"
;2 Button 0x54030000 0x4 170 116 48 14 "Cancel"
;3 msctls_progress32 0x54030004 0x0 10 10 14 86 ""
;4 Static 0x54000000 0x0 10 100 30 13 ""
;END DIALOG
;DIALOG EDITOR: "" 0x2030109 "*" "" ""
ret
;messages
sel message
,case WM_INITDIALOG
,GetCPU
,SetTimer hDlg 1 1000 0
,
,case WM_TIMER
,sel wParam
,,case 1
,,int i=GetCPU
,,SendMessage id(3 hDlg) PBM_SETPOS i 0
,,_s.from(i " %"); _s.setwintext(id(4 hDlg))
,,
,case WM_DESTROY
,case WM_COMMAND goto messages2
ret
;messages2
sel wParam
,case IDOK
,case IDCANCEL
ret 1
Posts: 85
Threads: 16
Joined: Aug 2009
Thank you gin! Exactly what i needed 8)
Posts: 1,000
Threads: 253
Joined: Feb 2008
Gintaras,
So I figured it would be nice to have an average...This is what I came up with:
,case WM_INITDIALOG
,GetCPU
,SetTimer hDlg 1 100 0
,case WM_TIMER
,sel wParam
,,case 1
,,ARRAY(int)+ Average
,,if Average.len>100
,,,Average.remove(0)
,,int i=GetCPU
,,Average[]=i
,,for _i 0 Average.len
,,,int CPU=CPU+Average[_i]
,,CPU=CPU/Average.len
,,SendMessage id(3 hDlg) PBM_SETPOS CPU 0
,,_s.from(i " %"); _s.setwintext(id(4 hDlg))
Now how would you do this?
Thanks,
jimmy Vig
Posts: 12,147
Threads: 143
Joined: Dec 2002
|