Q&A

  • CPU 사용률을 구하는데 잘 않되내요..
김영대님의 홈페이지에서 보았는데..

레지스트리의..

HKEY_DYN_DATAPerfStatsStatDataKERNELCPUUsage

여기에 사용률이 표시가 된다는 정보를 얻었습니다..

역시 사용률이 잘 되는것 같았습니다..

그런데 정상적으로 레지스트리에 사용률이 표시되지 않을때가 있습니다.

그러니까 계속 100으로 나올때가 있는데..

처음 컴퓨터를 켜서 저기의 값을 읽어보면 16진수 64(10진수 100)이 나옴니다.

CPU의 부하를 주던 아무 일도 하지않던 계속 100이나오다가..

레지스트리 에디터를 돌려서

HKEY_DYN_DATAPerfStatsStartSrvKERNELCPUUsage

StartStat,

StatData,

StopSrv,

StopStat

이 부문의 데이타들 읽다보면 어느순간부터 또 정상적인 CPU 사용률이

읽혀 집니다...

외 그럴까요??..

다른분은 사용률을 어떻게 구하고 계신지??.

아니면 제가 레지스트리를 잘못 읽고 있는것인지..

제가 레지스트리를 읽었던 소스를 같이 보냅니다.



//====

function ReadRegistryStr(ROOTKEY :HKEY;RegPath,InfoStr:string):string;

var

retstring, BinDataStr,_1Byte : string;

reg : TRegistry;

RegDataType : TregDataType;

i,ReadInteger,readbyte : integer;

buf, bufPtr: PChar;

begin

readbyte :=0;

retstring := '';

try

reg := TRegistry.Create;

if (ROOTKEY = HKEY(nil)) then begin

reg.RootKey := HKEY_CURRENT_USER;

end else begin

reg.RootKey :=ROOTKEY;

end;

reg.OpenKey(RegPath, false);

RegDataType :=reg.GetDataType(InfoStr);

readbyte := reg.GetDataSize(InfoStr);

if (rdString = RegDataType) or(rdExpandString = RegDataType) then begin

retstring := reg.ReadString(InfoStr);

end else

if rdInteger = RegDataType then begin

ReadInteger := reg.ReadInteger(InfoStr);

retstring := inttostr(ReadInteger);

end else

if rdBinary = RegDataType then begin

BinDataStr :=''; _1Byte :='';

GetMem(buf, readbyte);

bufPtr := buf;

reg.ReadBinaryData( InfoStr, buf^ , readbyte);

for i := 0 to readbyte-1 do begin

try

FmtStr(_1Byte, '%X', [Integer(buf^)]);

// if Length(_1Byte) = 1 then _1Byte := '0'+_1Byte;

except

// Application.MessageBox('Can not read binary register data', 'oop', mb_Ok);

end;

buf := buf + 1;

if i = 0 then begin

BinDataStr := _1Byte;

end else BinDataStr := BinDataStr + ' ' + _1Byte;



end;

FreeMem(bufPtr);

retstring := BinDataStr;

end else begin

// showmessage('타입알수없음');

retstring :='';

end;

reg.CloseKey;

finally

reg.free;

end;

result := retstring;

end;











function CPUUsage:integer;

var

retint : integer;

regpath ,temp: string;

temparray: array[0..255] of char;

begin

try

regpath := 'PerfStatsStatData';

//regpath := 'PerfStatsStartStat';

temp := ReadRegistryStr(HKEY_DYN_DATA,regpath,'KERNELCPUUsage');

strpcopy(temparray, temp);

temparray[2] :=char( 0);

retint :=hex2int(strpas(temparray));

except

retint :=0;

end;

result := retint;

end;





0  COMMENTS
    • 정남용
    • 1999.04.16 01:29
    • 3 COMMENTS
    • /
    • 0 LIKES
    • 김정선
      1999.04.23 00:51
      저두 같은 문제로 올렸는데 고맙게도 web@ns.nilex.co.kr라는 분이 메일을 보내왔더라구요.. Autoexec.bat...
    • 이정욱
      1999.04.17 02:26
      저도 역시 이런 문제 때문에 고생을 한적이 있었습니다. 전 엑세스 DB를 사용했을때 문제였죠. 그래서 결...
    • 김정선
      1999.04.16 22:56
      저두 같은 문제가 있었어요.. 아시는 분 꼭좀 가르쳐 주세요 전 델파이4.0 오라클 8.0.5버젼을 가지고 ...
    • 이주흥
    • 1999.06.25 04:47
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      1999.06.25 11:50
      100% VCL 이라면 따로 배포할 필요가 없습니다. 모든것은 생성된 EXE파일안데 들어가게 됩니다. 100% VCL...
    • 하명훈
    • 1999.06.25 04:17
    • 5 COMMENTS
    • /
    • 0 LIKES
    • 문창완
      1999.04.17 00:42
      네모나 이미지의 각꼭지를 적당하게 라운드 처리하고싶습니다. 도와주세요... 멘날 질문만 하는 사람입...
    • 안치봉
      1999.04.17 01:17
      문창완 wrote: > 네모나 이미지의 각꼭지를 적당하게 > 라운드 처리하고싶습니다. > 도와주세요... > ...
    • 문창완
      1999.04.17 01:49
      안치봉 wrote: > 문창완 wrote: > > 이미지의 각꼭지를 적당하게 > > 라운드 처리하고싶습니다. > > ...
    • 안치봉
      1999.04.17 02:14
      문창완 wrote: > 안치봉 wrote: > > 문창완 wrote: > > > 이미지의 각꼭지를 적당하게 > > > 라운드 ...
    • 문창완
      1999.04.17 03:07
      정말 감사합니다... 조금만 복잡한 글만나요면... 프로그래밍 하는 사람으로써 세계화에 뒤쳐지지않을려...
    • 문창완
    • 1999.04.17 00:42
    • 4 COMMENTS
    • /
    • 0 LIKES
    • 안치봉
      1999.04.17 01:17
      문창완 wrote: > 네모나 이미지의 각꼭지를 적당하게 > 라운드 처리하고싶습니다. > 도와주세요... > ...
    • 문창완
      1999.04.17 01:49
      안치봉 wrote: > 문창완 wrote: > > 이미지의 각꼭지를 적당하게 > > 라운드 처리하고싶습니다. > > ...
    • 안치봉
      1999.04.17 02:14
      문창완 wrote: > 안치봉 wrote: > > 문창완 wrote: > > > 이미지의 각꼭지를 적당하게 > > > 라운드 ...
    • 문창완
      1999.04.17 03:07
      정말 감사합니다... 조금만 복잡한 글만나요면... 프로그래밍 하는 사람으로써 세계화에 뒤쳐지지않을려...
    • 변상준
    • 1999.06.25 01:58
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 행인1
      1999.06.25 02:10
      변상준 께서 말씀하시기를... > 컴포넌트명 앞의 'T'의 의미는 무엇입니까 ? "델파이에서는 일반적으로...
    • 신인재
      1999.06.25 02:06
      음냐.... T는 컴포넌트라기보다는 델파이의 클래스명을 정의할때 전통적으로 쓰이는 것이지요. 이...
    • 엠마
    • 1999.04.17 00:43
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 김영해
      1999.04.17 07:08
      엠마 wrote: > 입력폼에서 전화번호입력을 maskedit로 지역번호 4자리 국번4,전화번호4로 입력해 테이블에...
    • bluepine
      1999.04.17 01:37
      엠마 wrote: > 입력폼에서 전화번호입력을 maskedit로 지역번호 4자리 국번4,전화번호4로 입력해 테이블에...
    • 경험자
      1999.06.25 04:34
      이수진 께서 말씀하시기를... > 퀵리포트를 미리보기 하지않고 바로 프린터로 출력할때 생기는 문제입니다...
    • 하남수
      1999.06.25 02:28
      사용은 안해봤지만 다음 프러퍼티를 사용하면 되지 않을까요... QuickRep1.PrinterSettings.LastPage
    • 구창민
      1999.04.16 07:33
      이순희 wrote: > 안녕하세요... 또 질문 올리네요.. > 저번 답변 고마웠습니다.. 그런데.. 근본적인 문제...
    • bluepine
      1999.04.17 01:23
      구창민 wrote: > 이순희 wrote: > > 안녕하세요... 또 질문 올리네요.. > > 저번 답변 고마웠습니다.. ...
    • 이상준
    • 1999.06.24 22:36
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 김영대
      1999.06.24 23:52
      이상준 께서 말씀하시기를... > Stringgrid에서 특정Cell에 데이타를 입력하는 데 조건을 주고 싶습니다. ...
    • 이순희
      1999.04.15 08:34
      안녕하세요... 테이블에 시작시간과 끝시간에 대한 두개의 필드가 있습니다. 두개의 필드에 대해 (끝시간...
    • bluepine
      1999.04.17 01:18
      이순희 wrote: > 안녕하세요... > 테이블에 시작시간과 끝시간에 대한 두개의 필드가 있습니다. > 두개...
    • 글쎄요.
      1999.04.15 19:02
      이순희 wrote: > 안녕하세요... > 테이블에 시작시간과 끝시간에 대한 두개의 필드가 있습니다. > 두개...
    • 양윤호
    • 1999.06.24 21:56
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 김영대
      1999.06.25 02:42
      양윤호 께서 말씀하시기를... > 윈도우즈 95와 98의 CD를 넣은 상태에서 직접 전화접속 어댑터와 전화접속...
    • 문창완
    • 1999.04.17 00:42
    • 5 COMMENTS
    • /
    • 0 LIKES
    • 최석기
      1999.06.24 21:30
      preview화면에서 괜찮은데 인쇄를 하면은, 글자가 가로고 커져 나옵니다. 항상 그런것은 아니고 특정...
    • 안치봉
      1999.04.17 01:17
      문창완 wrote: > 네모나 이미지의 각꼭지를 적당하게 > 라운드 처리하고싶습니다. > 도와주세요... > ...
    • 문창완
      1999.04.17 01:49
      안치봉 wrote: > 문창완 wrote: > > 이미지의 각꼭지를 적당하게 > > 라운드 처리하고싶습니다. > > ...
    • 안치봉
      1999.04.17 02:14
      문창완 wrote: > 안치봉 wrote: > > 문창완 wrote: > > > 이미지의 각꼭지를 적당하게 > > > 라운드 ...
    • 문창완
      1999.04.17 03:07
      정말 감사합니다... 조금만 복잡한 글만나요면... 프로그래밍 하는 사람으로써 세계화에 뒤쳐지지않을려...
    • bds
    • 1999.06.24 20:27
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 하늘
    • 1999.04.16 20:24
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      1999.04.17 00:47
      글쎄요... 광고/홍보란에 한번 써보세요. 하늘 wrote: > 안녕하세요... > 델파이로 만든 가계부 프...
    • heewoony
    • 1999.06.24 20:11
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 하남수
      1999.06.25 00:05
      heewoony 께서 말씀하시기를... > 퀵레포트에서 라벨을 출력하려구합니다. > 근데. 출력 용지는 연속연...
    • 하남수
      1999.06.25 00:05
      heewoony 께서 말씀하시기를... > 퀵레포트에서 라벨을 출력하려구합니다. > 근데. 출력 용지는 연속연...
    • 엠마
    • 1999.04.17 00:43
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 김영해
      1999.04.17 07:08
      엠마 wrote: > 입력폼에서 전화번호입력을 maskedit로 지역번호 4자리 국번4,전화번호4로 입력해 테이블에...
    • bluepine
      1999.04.17 01:37
      엠마 wrote: > 입력폼에서 전화번호입력을 maskedit로 지역번호 4자리 국번4,전화번호4로 입력해 테이블에...