Showing posts with label WMIC. Show all posts
Showing posts with label WMIC. Show all posts

Tuesday, December 12, 2017

How do you find details about your computer operating system using Windows Management Instrumentation?

Call up WMIC from a command prompt to begin as shown.e  It is better to start the CMD  as an adminsitrator.
-----------
C:\WINDOWS\system32>Wmic
wmic:root\cli>
----------------
Now you are at the root, use the following statement to find the help file for the Operating System (OS):
------------
wmic:root\cli>OS /?
OS - Installed Operating System/s management.
HINT: BNF for Alias usage.
( [WMIObject] | [] | [] ) [].

USAGE:
OS ASSOC []
OS CALL []
OS CREATE
OS DELETE
OS GET [] []
OS LIST [] []
OS SET []

-------------------
You should get help for each of these as well. Here is an example for OS Get:
Execute the following statement:
-------------
wmic:root\cli>OS GET /?
Property get operations.
USAGE:
GET [] []
NOTE: ::= |

The following properties are available:
Property                                Type                    Operation
========                                ====                    =========
BootDevice                              N/A                     N/A
BuildNumber                             N/A                     N/A
BuildType                               N/A                     N/A
CSDVersion                              N/A                     N/A
CSName                                  N/A                     N/A
CodeSet                                 N/A                     N/A
CountryCode                             N/A                     N/A
CurrentTimeZone                         N/A                     N/A
Debug                                   N/A                     N/A
Description                             N/A                     N/A
Distributed                             N/A                     N/A
EncryptionLevel                         N/A                     N/A
ForegroundApplicationBoost              N/A                     N/A
FreePhysicalMemory                      N/A                     N/A
FreeSpaceInPagingFiles                  N/A                     N/A
FreeVirtualMemory                       N/A                     N/A
InstallDate                             N/A                     N/A
LastBootUpTime                          N/A                     N/A
LocalDateTime                           N/A                     N/A
Locale                                  N/A                     N/A
Manufacturer                            N/A                     N/A
MaxNumberOfProcesses                    N/A                     N/A
MaxProcessMemorySize                    N/A                     N/A
Name                                    N/A                     N/A
NumberOfLicensedUsers                   N/A                     N/A
NumberOfProcesses                       N/A                     N/A
NumberOfUsers                           N/A                     N/A
OSLanguage                              N/A                     N/A
OSProductSuite                          N/A                     N/A
OSType                                  N/A                     N/A
Organization                            N/A                     N/A
OtherTypeDescription                    N/A                     N/A
PlusProductID                           N/A                     N/A
PlusVersionNumber                       N/A                     N/A
Primary                                 N/A                     N/A
QuantumLength                           N/A                     N/A
QuantumType                             N/A                     N/A
RegisteredUser                          N/A                     N/A
SerialNumber                            N/A                     N/A
ServicePackMajorVersion                 N/A                     N/A
ServicePackMinorVersion                 N/A                     N/A
SizeStoredInPagingFiles                 N/A                     N/A
Status                                  N/A                     N/A
SystemDevice                            N/A                     N/A
SystemDirectory                         N/A                     N/A
SystemDrive                             N/A                     N/A
TotalSwapSpaceSize                      N/A                     N/A
TotalVirtualMemorySize                  N/A                     N/A
TotalVisibleMemorySize                  N/A                     N/A
Version                                 N/A                     N/A
WindowsDirectory                        N/A                     N/A
The following GET switches are available:
/VALUE                       - Return value.
/ALL(default)                - Return the data and metadata for the attribute.
/TRANSLATE:      - Translate output via values from
.
/EVERY: [/REPEAT:] - Returns value every (X interval) seconds, If /REPEAT specified the command is executed times.
/FORMAT:   - Keyword/XSL filename to process the XML results.

NOTE: Order of /TRANSLATE and /FORMAT switches influences the appearance of output.
Case1: If /TRANSLATE precedes /FORMAT, then translation of results will be followed by formatting.
Case2: If /TRANSLATE succeeds /FORMAT, then translation of the formatted results will be done.
------------
Now here are a few things about my operating system (Windows 10 Professional)
----------------
wmic:root\cli>OS GET BootDevice
BootDevice
\Device\HarddiskVolume2

wmic:root\cli>OS GET SerialNumber
SerialNumber
00330-80000-00000-AA401

wmic:root\cli>OS GET Manufacturer
Manufacturer
Microsoft Corporation

wmic:root\cli>OS GET Version
Version
10.0.17025

------------
This was just a sample of what you can find. You can try a whole lot on yourself.

Thursday, November 30, 2017

How do you find details about the aliases in WMI?

In order to explore with WMI we need to know the alias for the item we want to explore. Let us find out what the 'alias' in WMI is.

Let us get the help on 'alias' first.
Run this command (just type WMIC in search charm in Windows 10[this is where you see the Cortana icon]) and the C:\windows\System32\wbem\wmic.exe will come up as shown.

Now type alias /? at the wmic:root> prompt as shown.
-----------------------------------
wmic:root\cli>alias /?
ALIAS - Access to the aliases available on the local system
HINT: BNF for Alias usage.
( [WMIObject] | [] | [] ) [].

USAGE:
ALIAS ASSOC []
ALIAS CALL []
ALIAS CREATE
ALIAS DELETE
ALIAS GET [] []
ALIAS LIST [] []

wmic:root\cli>
------------------
Now we can get the aliases and what they represent using the Alias List command as shown in the next using the list switch - brief:
------------
wmic:root\cli>Alias List Brief
FriendlyName         PWhere                                  Target
NICConfig               Where Index=#                        Select * from Win32_NetworkAdapterConfiguration
SysDriver                 where Name='#'                       Select * from Win32_SystemDriver
TapeDrive                                                                 Select * from Win32_TapeDrive
NTEventLog           WHERE LogfileName='#'        Select * from Win32_NTEventlogFile
UserAccount                                                             Select * from Win32_UserAccount
Job                          WHERE jobid=#                               Select * from Win32_ScheduledJob
SoftwareElement                                                      Select * from Win32_SoftwareElement
--------------------------------------------------------
The full list is long and above is a clipped list.

Here is picture of the complete list (use a magnifier to see it):


WMicaliaslist.png

Sunday, November 26, 2017

What is WMI?

Windows Management Instrumentation(WMI) allows you to use API calls to control systems and services on Microsoft Windows 10 (also from Windows XP) through models Win32_LogicalDisk and Win32_Process. You can use WMI to control local and remote machines. WMI is available for all Windows' versions.

Some of the tasks that you can undertake with WMI are,

Start a process on a remote computer.
Schedule a process to run at specific times on specific days.
Reboot a computer remotely.
Get a list of applications installed on a local or remote computer.
Query the Windows event logs on a local or remote computer or multiple computers with a single command.

You access  WMI locally and remotely using the interactive command WMIC in command-line as follows:
----------
C:\>wmic
wmic:root\cli>
-----------
Now you can see what WMI is about using the help flag /? as follows:
----------
wmic:root\cli> /?
[global switches]
The following global switches are available:
/NAMESPACE           Path for the namespace the alias operate against.
/ROLE                Path for the role containing the alias definitions.
/NODE                Servers the alias will operate against.
/IMPLEVEL            Client impersonation level.
/AUTHLEVEL           Client authentication level.
/LOCALE              Language id the client should use.
/PRIVILEGES          Enable or disable all privileges.
/TRACE               Outputs debugging information to stderr.
/RECORD              Logs all input commands and output.
/INTERACTIVE         Sets or resets the interactive mode.
/FAILFAST            Sets or resets the FailFast mode.
/USER                User to be used during the session.
/PASSWORD            Password to be used for session login.
/OUTPUT              Specifies the mode for output redirection.
/APPEND              Specifies the mode for output redirection.
/AGGREGATE           Sets or resets aggregate mode.
/AUTHORITY           Specifies the for the connection.
/?[:]    Usage information.

For more information on a specific global switch, type: switch-name /?

The following alias/es are available in the current role:
ALIAS                    - Access to the aliases available on the local system
Press any key to continue, or press the ESCAPE key to stop

----------
Refer to this source for more information:
https://msdn.microsoft.com/en-us/library/aa384642(v=vs.85).aspx