16

How do I find the version of another Windows machine in the local network?

1

6 Answers 6

20

As Josh King noted you can use srvinfo which is a Windows 2003 Resource Kit tool.

On Windows 7 you can use systeminfo

systeminfo /s remote_computer_name
1
  • Thanks for that, was trying to find a non server alternative but my Google wasn't strong enough!
    – Windos
    Jul 18, 2011 at 22:05
7

To get just the hostname and OS from systeminfo pipe in findstr, this eliminates the other noise

systeminfo /s [machine name]|findstr /i "host OS "
2

nmap can perform remote OS detection.

It's not 100% accurate, but you'll have to see for yourself.

Here is an example result. I specifically picked a result that wasn't 100% accurate, but this machine is a Windows Server 2008.

Warning: OSScan results may be unreliable because we could not find at least 1 open and 1 closed port
Device type: general purpose
Running (JUST GUESSING): Microsoft Windows Vista|2008|7 (98%)
Aggressive OS guesses: Microsoft Windows Vista SP0 or SP1, Server 2008 SP1, or Windows 7 (98%), Microsoft Windows Server 2008 (98%), Microsoft Windows 7 Professional (97%), Microsoft Windows Vista Business SP1 (93%), Microsoft Windows Vista Home Premium SP1 (93%), Microsoft Windows Server 2008 SP2 (91%), Microsoft Windows Vista Home Premium SP1, Windows 7, or Server 2008 (91%), Microsoft Windows 7 (90%)
No exact OS matches for host (test conditions non-ideal).

2

Thank you [squillman] :)

While you have so many machines to be inspected, just do this:

(1) Create TXT file contains all hostnames of your machines. Eg: ALL-MACHINES.TXT

machine_number_0001
machine_number_0002
machine_number_0013
machine_number_0101
machine_number_0111

(2) Do FOR instruction within CMD:

C:\Users\MrCMD> FOR /F %S IN ('TYPE ALL-MACHINES.TXT') DO SYSTEMINFO /S %S [enter]

(3) Any comments for improvement are welcome. :)

1

If you have access to one of the Windows Server resource kits (2003 for sure, not sure about newer versions) you can use the Srvinfo command.

Srvinfo \\remote_compute_rname

You'll get a host of information from it, but what you're interest in is:

Product Name: Microsoft Windows XP Product Options: Professional

2
  • Thanks. Works for localhost but not for the other machines possibly because I'm not the admin in the network. Is there a workaround?
    – shane
    Jul 18, 2011 at 22:02
  • 1
    @shane If you are not an admin, there is no program that will give you that info.
    – KCotreau
    Jul 18, 2011 at 23:39
0

For those coming here that need to do many machines and want to use PowerShell:

Single Machine: Get-CimInstance Win32_OperatingSystem -ComputerName Machine Name | Select-Object CSName, Caption, BuildNumber, OSArchitecture

All Machines: Get-ADComputer -filter * | Foreach-Object {Get-CimInstance Win32_OperatingSystem -ComputerName $_.name -ErrorAction SilentlyContinue | Select-Object CSName, Caption, BuildNumber, OSArchitecture} | Format-Table -Property * -AutoSize

Assuming of course you have WinRM enabled. You can batch enable WinRM via PS too but that's another topic.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .