WinFingerprint is a Win32 MFC VC++ .NET based security tool that is able to Determine OS, enumerate users, groups, shares, SIDs, transports, sessions, services, service pack and hotfix level, date and time, disks, and open tcp and udp ports. It is GUI-based and you can use checkboxes to indicate which information is desired.

Option Description
-host < hostname > Scan a single host. Identical to the “Single Host” Input Option in the GUI.
-l < IP list > -list < IP list > Scan a list of hosts. Identical to the “IP List” Input Option in the GUI. The < IP list > is a text file with a single host per line.
-startip < ip address > -endip < ip address > Identical to the “IP Range” Input Option in the GUI.
-o < filename > -output < filename > Write output to a file. This is identical to the format in which the GUI saves data.
-a (-all) Equivalent to -shares -services -time -users -groups disks -ping -tcpscan -udpscan fingerprint. Does not include -null -startport or endport (won't check for NULL IPC$ sessions or perform a port scan).|
|-b (-shares)|Enumerate NetBIOS shares.|
|-d (-disks)|Enumerate disks.|
|-f (-fingerprint)|Determine Windows version. |
|-g (-groups) |Enumerate groups. |
|-i (-time) |Get remote time and date. (Note that t enumerates transports, not time.) |
|-n (-null) |Establish NULL IPC$ sessions.
-p (-ping) Only hosts that respond to ICMP echo request are scanned.
-r (-registry) Read Service Pack and Hotfix Level from registry.
-s (-sessions) Enumerate sessions.
-t (-transports) Enumerate transports.
-u (-users Enumerate users.
-v (-services) Enumerate running services.
-ad Use Active Directory API functions rather than Windows Domain (NT).
-tcpscan TCP portscan (Grabs Banners).
-udpscan UDP portscan.
-startport <1-65535> Default startport = 1.
-endport <1-65535> Default endport = 1024.