monitor description

is there a way in windows 7 in the registry or somewhere else to find a description of the monitor?
I have about 1500 pc in our environment, and we want to have a survey of the type of monitor connected to the pc's.  we are trying to find how many 17 inch monitors we have, to make a budget to replace them.
walking the build to have a physical inventory seems a little impractical since there are so many computers.
Who is Participating?
☠ MASQ ☠Connect With a Mentor Commented:
Here's another way using VBS

Copy this into Notepad and save as 'Monitor.vbs"

'VBS Script for Monitor ID (Checks all three locations) + Resolution
'Then calculate Diagonal Screen Size in Inches using Pythagoras
'E-E Version by MASQ

On Error Resume Next
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colItems = objWMIService.ExecQuery("Select * from Win32_DesktopMonitor",,48)
For Each objItem in colItems
    Wscript.Echo "Description: " & objItem.Description
    Wscript.Echo "MonitorType: " & objItem.MonitorType
    Wscript.Echo "Name: " & objItem.Name
    Wscript.Echo "Native Resolution: " & objItem.ScreenHeight &"  X " & objItem.ScreenWidth

Set objWMIService = GetObject("winmgmts:\\.\root\WMI")

Set colItems = objWMIService.ExecQuery("Select * From WmiMonitorBasicDisplayParams")

For Each objItem in colItems
	Wscript.Echo "Diagonal Size (Inches): " & (Round((SQR((objItem.MaxHorizontalImageSize ^2)+(objItem.MaxVerticalImageSize ^2))*0.393700787),2))

Open in new window

Lines 12-14 look in the three separate locations the Monitor name/model may be stored so you'll see some duplication.  You might be able to safely delete two of those lines if your monitors have the name consistently in one of those three locations.

Line 15 gets the screen resolution in pixels - it's an optional extra if you don't need it just remove it.

Lines 24-26 grab the screen width and height from WMI and use Pythagoras to get the diagonal then convert from centimetres to inches and round up to two decimals.

Although this pulls the info from the local machine I'm pretty sure you can use all or part to solve your query as part of a network audit tool.
Joe Winograd, Fellow&MVEConnect With a Mentor DeveloperCommented:
Hi Jeff,

I suggest taking a look at Belarc's products:

Their Belarc Advisor has long been among the best products for tracking installed hardware and software:

It's free for personal use, but you may not use it for any commercial purposes, so you'll want to look at their BelManage product:

Here's what the output looks like with respect to the monitors when I ran it on my personal machine:

Hanns.G HF289H [Monitor] (27.4"vis, s/n xxxx, May 2008)
Hanns.G iH282 [Monitor] (27.4"vis, s/n xxxxxxxx, November 2010)

It actually gives the serial numbers, but I redacted them. Regards, Joe
JohnConnect With a Mentor Business Consultant (Owner)Commented:
I find my Windows 7 Desktop NEC 661D display information in:


Look through a few of these and see if that is what you need.
Free Tool: Subnet Calculator

The subnet calculator helps you design networks by taking an IP address and network mask and returning information such as network, broadcast address, and host range.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

☠ MASQ ☠Commented:
I think you should be able to script this using WMI (Windows Management Interface) (assuming the machines have drivers installed and their authors have included the details).

There's a WMI value "Win32_MonitorDetails\SizeDiagInch" which (unsurprisingly) returns the diagonal size in inches - or if you have a limited range of monitors in your establishment "Win32_MonitorDetails\Model" will return the manufacturer's model reference.
☠ MASQ ☠Commented:
^^  As described here:
JeffBeallAuthor Commented:
when i started this project, before I asked the question here, I found this huge script, and attached a text file that has the script. It works fine, but I have way too many computers to run this script on. Currently what I have been doing is getting the computer name from an excel spreadsheet, running the script which starts with a box asking for the computer name. I put the computer name in, and the script gets the monitor info if the computer is turned on. then i put the model info of the monitor in another column of the excel spreadsheet.
would there be a way to have the this script, or a script provided in this question, get the monitor info and put it in the excel spreadsheet?
JohnBusiness Consultant (Owner)Commented:
Probably the easiest way would be to output to and append to a text file. Then open the text file in Excel either as text or as csv depending on how you output and delimited the text.
JeffBeallAuthor Commented:
thank you for the help
Joe Winograd, Fellow&MVEDeveloperCommented:
You're welcome. Regards, Joe
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.