본문 바로가기
Delphi Tip/Windows

시스템 정보 알아보기

by MonoSoft 2024. 2. 27.
728x90
반응형

시스템 정보 알아보기

728x90

 

CPU, OS, Memory, Hardware, Software의 정보들이 있는 레지스트리 정보입니다

 

 

CPU

 

HKEY_LOCAL_MACHINE\HARDWARE\DESCRIPTION\System\CentralProcessor\???

 

프로세서 ProcessorNameString

Identifier Identifier

속도 ~MHz (NT)

 

// CPU속도 측정

function GetCPUMHz: Double;

var

TimerHi, TimerLo: DWORD;

PriorityClass, Priority: Integer;

begin

PriorityClass := GetPriorityClass( GetCurrentProcess );

Priority := GetThreadPriority( GetCurrentThread );

SetPriorityClass( GetCurrentProcess, REALTIME_PRIORITY_CLASS );

SetThreadPriority( GetCurrentThread, THREAD_PRIORITY_TIME_CRITICAL );

Sleep(10);

asm

DW 310Fh

MOV TimerLo, EAX

MOV TimerHi, EDX

end;

 

Sleep( 500 );

asm

DW 310Fh

SUB EAX, TimerLo

SBB EDX, TimerHi

MOV TimerLo, EAX

MOV TimerHi, EDX

end;

 

SetThreadPriority( GetCurrentThread, Priority );

SetPriorityClass( GetCurrentProcess, PriorityClass );

Result := TimerLo / ( 1000 * 500 );

end;

 

 

 

OS 정보

 

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion

 

OS 종류 ProductName

 

Version CurrentVersion+"."+CurrentBuildNumber (NT)

VersionNumber (98)

CSDVersion CSDVersion (서비스팩/NT)

OS 디렉토리 SystemRoot

사용자 RegisteredOwner

사용자회사 RegisteredOrganization

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\ComputerName\ComputerName

컴퓨터 이름 ComputerName

 

 

프로그램 설치 정보 (Unstall 기능 있는 것만) 

 

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\????

 

표시 이름 DisplayName

 

 

메모리 관련

 

procedure WriteMemState;

var

MemStat : TMemoryStatus;

begin

MemStat.dwLength := sizeof(TMemoryStatus);

GlobalMemoryStatus(MemStat);

with MemStat do

begin

ShowMessageFmt('Memory : %d KB',[Trunc(dwTotalPhys/1024)]);

//총메모리

ShowMessageFmt('Available : %d KB',[Trunc(dwAvailPhys/1024)]);

//MemAvailable

ShowMessageFmt('Used : %d %%',[100 - Trunc(dwAvailPhys/dwTotalPhys*100)]);

//사용메모리

ShowMessageFmt('SwapFileSetting : %d KB',[Trunc(dwTotalPageFile/1024)]);

//SwapFileSetting

ShowMessageFmt('SwapFileSize : %d KB',[Trunc((dwTotalPageFile-dwAvailPageFile)/1024)]);

//SwapFileSize

ShowMessageFmt('SwapFileUsed : %d %%',[100 - Trunc(dwAvailPageFile/dwTotalPageFile*100)]);

//SwapFileUsage

end;

end;

 

 

장비목록

 

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum 실제 장비 레지스트리 :

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\?????\?????

 

 

 

장치종류 Class

 

기타장치 Unknown

네트워크 어댑터 Net

디스크 드라이브 DiskDrive

디스플레이 어댑터 Display

마우스 및 기타 포인팅 장치 Mouse

모니터 Monitor

범용 직렬 버스 컨트롤러 USB 사운드,비디오 및 게임 컨트롤러 Media

시스템 장치 System

컴퓨터 Computer

키보드 Keyboard

포트(COM 및 LPT) Ports

플로피 디스크 드라이브 FloppyDisk

플로피 디스크 컨틀롤러 fdc

DVD/CD-ROM 드라이브 cdrom IDE ATA/ATAPI 컨트롤러 hdc SCSI 및 RAID

컨트롤러 SCSIAdapter

728x90
반응형

댓글