Make(cnet) ver(4.04 build 185) Add(EntryPoint,2953706,21,105) { Width=273 Height=116 } Add(Button,1187072,154,56) { Left=15 Top=15 Text="Start" Point(onClick) link(onClick,9948707:doStart,[(198,62)(198,83)]) AddHint(-53,7,37,13,Text) } Add(Button,8605916,154,112) { Left=15 Top=45 Text="Stop" Point(onClick) link(onClick,3712487:doWork2,[]) AddHint(-53,7,37,13,Text) } Add(Label,4316190,392,56) { Left=140 Top=25 Width=100 Text="0" TextAlign=1 Point(doText) Point(onClick) } Add(Inline,6229035,252,77) { WorkPoints=#7:doUsage| EventPoints=#7:onUsage|7:onError|0:| Code="\r\nDouble X1, X2, X3, X4;\r\n\r\nprivate void doWork(object data, int index) {\r\n try {\r\n X3 = X1; X4 = X2;\r\n ManagementObjectSearcher searcher = \r\n new ManagementObjectSearcher(@"root\CIMV2", "SELECT * FROM Win32_PerfRawData_PerfOS_Processor WHERE Name = '_Total'"); \r\n foreach (ManagementObject queryObj in searcher.Get()) {\r\n X2 = System.Convert.ToDouble(queryObj["PercentProcessorTime"]);\r\n X1 = System.Convert.ToDouble(queryObj["TimeStamp_Sys100NS"]);\r\n int percent = System.Convert.ToInt32(Math.Round((1-((X2-X4)/(X1-X3)))*100));\r\n sys.onUsage(percent);\r\n }\r\n } catch (ManagementException e) {\r\n sys.onError(e.Message);\r\n }\r\n}" link(onUsage,5286345:doEvent1,[]) link(onError,104185:doEvent1,[]) } Add(Timer,9948707,210,77) { link(onTick,6229035:doUsage,[]) } Add(Using,1536976,21,56) { List="System.Management" } Add(ProgressBar,1191737,392,105) { Left=140 Top=45 Style=1 Point(doValue) } Add(Hub,5286345,357,77) { link(onEvent1,4316190:doText,[(378,83)(378,62)]) link(onEvent2,1191737:doValue,[(378,90)(378,111)]) } Add(Hub,104185,294,84) { link(onEvent1,3712487:doWork1,[(327,90)(327,118)]) link(onEvent2,11990321:doShow,[(322,97)(322,111)]) } Add(HubEx,3712487,194,112) { Angle=3 link(onEvent,9948707:doStop,[(198,90)]) } Add(MessageBox,11990321,336,105) { }