Introduction
This program shows you a very simple way to determine your PC hardware and software. It queries operating system for the following Hardware/Software:
- Operating System Version (Thanks to PJ Naughter)
- Computer Name
- IP Address of Computer
- User Name
- Internet Explorer Version
- Total RAM
- Free Memory
- Number of Hard Disk Drives
- Hard Disk Total Space/Free Space/Used Space
- CDROM Drives
- Monitor Resolution
- Color Depth
- Number of CPUs (Thanks to Iain Chesworth)
- CPU Speed
- CPU Identifier
- CPU Vendor Identifier
- Operating System Folder
- System Folder
Program structure
By clicking the combo box and changing it's item, selected item is determined and it's ID passed to Process
member function of dialog. The Process
member function takes ID of query and returns the proper result. Body of Process
has a lot of code to prepares result and if any error has occurred, the error string will be returned.
How to use
Add the following header and implementation files to your project:
- cup_info.h, cpu_info.cpp: For CPU Information like Speed, ID, Vendor ID,...
- dtwinver.h, dtwinver.cpp: For Operating System Version (e.g. Build Number and Service Packs)
- SysInfoDefs.h, SysInfoDefs.cpp: For General System Information like Total RAM, Number of Hard Disk Drives, Disk Space/Free Space/Used Space
- SmartDef.h: For IDE S.M.A.R.T. commands to query from IDE hard disks that support SMART.
Functions
Below table shows all functions that are used to determine Hardware/Software of the computer.
CString DetermineIEVer(); |
Determining Internet Explorer Version (Build Number) |
CString QueryHardDisks(); |
Calculating Number of Hard Disks and Number of Cylinders, Tracks per Cylinders, Sectors per Tracks, Bytes per Sector and Total Capacity for each Hard Disks |
CString QueryDriveSpace(); |
Calculating Drive Space/Free Space/Used Space of All Hard Drives |
CString QueryCDDrive(); |
Determining Number of CD Drives |
CString QueryTotalRAM() |
Calculating Total Physical RAM (Random Access Memory) |
CString QueryFreeRAM(); |
Calculating Free Physical Memory |
CString QueryUserName() |
User Name of current user |
CString QueryComputerName(); |
Computer Name |
CString QueryCPUInfo(); |
Number of CPU Installed on Mother Board |
CString QueryCPUSpeed(); |
Speed of each CPU |
CString QueryCPUID(); |
ID of each CPU |
CString QueryCPUVendorID(); |
ID of CPU Vendor |
CString QueryResolution(); |
Calculating Monitor Resolution in Pixel |
CString QueryPixelDepth(); |
Calculating Color Depth of any Pixel |
CString QueryOS(); |
Determining Operating System Version (Build Number) and it's Service Pack |
CString QueryLocalIPAddress(); |
Determining IP Address of Computer |
CString QueryHDDSmartCommand(); |
Query IDE hard disks that support SMART (Self-Monitoring Analysis & Reporting Technology). |
CString QueryDirectory(char* sFolder,int iFolder); |
Determining Full Path of Specified Folder where sFolder is Folder Name and iFolder is Folder Shell ID Number |
CString GetCommandError(); |
Determining last occurred error |
Requirements
- Latest Platform SDK
- Visual Studio 6.0 with service pack 5