Click here to Skip to main content
Click here to Skip to main content

System Information

By , 19 Aug 2003
 

Screen shot of program

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

License

This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

A list of licenses authors might use can be found here

About the Author

A. Riazi
Iran (Islamic Republic Of) Iran (Islamic Republic Of)
Member
I was born in Shiraz, a very beautiful famous city in Iran. I started programming when I was 12 years old with GWBASIC. Since now, I worked with various programming languages from Basic, Foxpro, C/C++, Visual Basic, Pascal to MATLAB and now Visual C++.
I graduated from Iran University of Science & Technology in Communication Eng., and now work as a system programmer for a telecommunication industry.
I wrote several programs and drivers for Synthesizers, Power Amplifiers, GPIB, GPS devices, Radio cards, Data Acqusition cards and so many related devices.
I'm author of several books like Learning C (primary and advanced), Learning Visual Basic, API application for VB, Teach Yourself Object Oriented Programming (OOP) and etc.
I'm winner of January, May, August 2003 and April 2005 best article of month competetion, my articles are:

You can see list of my articles, by clicking here


Sign Up to vote   Poor Excellent
Add a reason or comment to your vote: x
Votes of 3 or less require a comment

Comments and Discussions

 
You must Sign In to use this message board.
Search this forum  
    Spacing  Noise  Layout  Per page   
QuestionThank You Pinmemberadam-master5 Mar '13 - 23:56 
GeneralMy vote of 5 Pinmembermanoj kumar choubey26 Feb '12 - 19:55 
GeneralExcuseme Help me! Pinmembersincr61323 Apr '11 - 20:56 
GeneralMy vote of 1 PinmemberAli Saeedi12 May '10 - 1:38 
GeneralLittle mistake. PinmemberMember 284418815 Jul '08 - 2:18 
QuestionClass CPUInfo do not support Chip intel ? PinmemberTo Quang Hiep5 May '08 - 3:18 
Questionhellp me plz Pinmemberlays18 Apr '08 - 23:13 
Questionhelp me Pinmemberlays14 Apr '08 - 20:32 
Questionhelp Pinmemberlays8 Apr '08 - 8:38 
GeneralYour source is very valueble to me! PinmemberIngenious00128 Mar '07 - 1:39 
GeneralCreating a new partition PinmemberMember #389306511 Mar '07 - 21:11 
QuestionHard Disk's Physical Information PinmemberMember #38930656 Mar '07 - 0:34 
QuestionUnable to download the source PinmemberNanda Kishore_SGS29 Oct '06 - 22:43 
QuestionSCSI S.M.A.R.T. info? Pinmembersilikon25 Oct '06 - 5:39 
QuestionAMD 64 PinmemberRaul Simcic6 Aug '06 - 22:54 
GeneralERROR_INSUFFICIENT_BUFFER PinmemberRandor30 May '06 - 17:40 
QuestionCan you help me. Pinmemberterahez11 Apr '06 - 0:32 
GeneralHard Drive Serial Number Pinmemberabubakar_noman5 Mar '06 - 3:32 
Generalcompilation error Pinmemberchunnu_8017 Jan '06 - 4:39 
GeneralSmall mistake for Total memory Pinmembercpsworld11 Jan '06 - 7:08 
GeneralHarddisk and drive name Pinmemberugur_basak23 Nov '05 - 20:56 
GeneralMemory Leak detected PinmemberJuri Barthel24 Jun '05 - 1:05 
GeneralMore features PinmemberHachaso30 May '05 - 1:09 
GeneralStructure misalignment Pinmembersmedlytonker21 Feb '05 - 9:06 
Generallots of compile errors Pinmemberpolunga25 Jan '05 - 19:06 
Generalwindows xp PinmemberstrugglingCoder6 Jan '05 - 18:50 
QuestionHow to get centrino cpu speed correctly? Pinsusswx2a819 Oct '04 - 11:36 
GeneralSlight error and missing SMART infos PinmemberRaul Sobon12 Oct '04 - 15:26 
GeneralCentrino Unsupported PinmemberGuoshima23 Aug '04 - 23:40 
GeneralMATLAB & C++ or JAVA Pinmemberama200019 Aug '04 - 7:49 
GeneralMissing comma PinmemberDimitris Vassiliades9 Aug '04 - 22:51 
QuestionUSB device info? Pinmemberkanetheterrible125 Jul '04 - 22:38 
GeneralHelp For Non C++ Programmer Pinmemberjmitch20 Jul '04 - 10:50 
QuestionHow to get memory module's serial number? Pinmemberjackywzh15 Jul '04 - 13:59 
Generalmissing defines Pinmembermatt200014 Jul '04 - 14:52 
GeneralHelp me please!! Pinsussanonymous16 Jun '04 - 22:18 
GeneralCompile error! PinsussAnonymous12 May '04 - 13:08 
Generalmonitor's type and serial number PinsussAnonymous25 Apr '04 - 4:51 
QuestionHow can I get the system major language? Pinmembercharcoalc25 Feb '04 - 19:42 
Questionhow to get extra details ?? Pinmemberdharani10 Dec '03 - 0:22 
GeneralMainboard Information not available in Win2K and Win98 on using WMI Pinmembergayatrisk2 Dec '03 - 23:16 
QuestionHow can i get the Mainboard's Serial number? PinmemberShuang. Wu24 Nov '03 - 20:20 
GeneralCompiler errors PinmemberHekmatyar915 Nov '03 - 8:40 
GeneralMainboard PinmemberDelikan11 Nov '03 - 3:51 
GeneralDVD drive detection... PinmemberRNavarette7 Nov '03 - 10:26 
GeneralEHEM>....... Pinmembersnyp20 Aug '03 - 5:53 
GeneralPlease Contact me Pinmemberkomeily135411 Aug '03 - 9:55 
GeneralReading CPU Temperature from VB or VC project PinmemberFaisal_tuhh8 Aug '03 - 4:43 
GeneralGreat work, problem with WinNT PinmemberManfred Staiger1 Jul '03 - 1:55 
GeneralSerial Number of Harddisk or Mainboard or CPU PinmemberNatuch9 Jun '03 - 23:00 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Rant Rant    Admin Admin   

Permalink | Advertise | Privacy | Mobile
Web03 | 2.6.130523.1 | Last Updated 20 Aug 2003
Article Copyright 2003 by A. Riazi
Everything else Copyright © CodeProject, 1999-2013
Terms of Use
Layout: fixed | fluid