Skip to content

Commit 2c7df4e

Browse files
committed
Copy about_WMI to 7.x
1 parent 906745b commit 2c7df4e

5 files changed

Lines changed: 330 additions & 4 deletions

File tree

Lines changed: 110 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,110 @@
1+
---
2+
description: Windows Management Instrumentation (WMI) uses the Common Information Model (CIM) to represent systems, applications, networks, devices, and other manageable components of the modern enterprise.
3+
Locale: en-US
4+
ms.date: 01/03/2018
5+
online version: https://learn.microsoft.com/powershell/module/microsoft.powershell.core/about/about_wmi?view=powershell-7.4&WT.mc_id=ps-gethelp
6+
schema: 2.0.0
7+
title: about_WMI
8+
---
9+
10+
# about_WMI
11+
12+
## Short description
13+
14+
Windows Management Instrumentation (WMI) uses the Common Information Model
15+
(CIM) to represent systems, applications, networks, devices, and other
16+
manageable components of the modern enterprise.
17+
18+
## Long description
19+
20+
Windows Management Instrumentation (WMI) is Microsoft's implementation of
21+
Web-Based Enterprise Management (WBEM), the industry standard.
22+
23+
Classic WMI uses DCOM to communicate with networked devices to manage remote
24+
systems. Windows PowerShell 3.0 introduces a CIM provider model that uses WinRM
25+
to remove the dependency on DCOM. This CIM provider model also uses new WMI
26+
provider APIs that enable developers to write Windows PowerShell cmdlets in
27+
native code (C++).
28+
29+
Don't confuse WMI providers with Windows PowerShell providers. Many Windows
30+
features have an associated WMI provider that exposes their management
31+
capabilities. To get WMI providers, run a WMI query that gets instances of the
32+
**__Provider** WMI class, such as the following query.
33+
34+
```powershell
35+
Get-WmiObject -Class __Provider
36+
```
37+
38+
## Three components of WMI
39+
40+
The following three components of WMI interact with Windows PowerShell:
41+
Namespaces, Providers, and Classes.
42+
43+
WMI Namespaces organize WMI providers and WMI classes into groups of related
44+
components. In this way, they're similar to .NET Framework namespaces.
45+
Namespaces aren't physical locations, but are more like logical databases. All
46+
WMI namespaces are instances of the __Namespace system class. The default WMI
47+
namespace is **root/CIMV2** (since Microsoft Windows 2000). To use Windows
48+
PowerShell to get WMI namespaces in the current session, use a command with the
49+
following format.
50+
51+
```powershell
52+
Get-WmiObject -Class __Namespace
53+
```
54+
55+
To get WMI namespaces in other namespaces, use the Namespace parameter to
56+
change the location of the search. The following command finds WMI namespaces
57+
that reside in the **root/CIMV2/Applications** namespace.
58+
59+
```powershell
60+
Get-WmiObject -Class __Namespace -Namespace root/CIMV2/Applications
61+
```
62+
63+
WMI namespaces are hierarchical. Therefore, obtaining a list of all namespaces
64+
on a particular system requires performing a recursive query starting at the
65+
root namespace.
66+
67+
WMI Providers expose information about Windows manageable objects. A provider
68+
retrieves data from a component, and passes that data through WMI to a
69+
management application, such as Windows PowerShell. Most WMI providers are
70+
dynamic providers, which means that they obtain the data dynamically when it's
71+
requested through the management application.
72+
73+
## Finding WMI classes
74+
75+
In a default Windows 8 installation, there are more than 1,100 WMI classes in
76+
**root/CIMV2**. With this many WMI classes, the challenge becomes identifying
77+
the appropriate WMI class to use to perform a specific task. Windows PowerShell
78+
3.0 provides two ways to find WMI classes that are related to a specific topic.
79+
80+
For example, to find WMI classes in the **root/CIMV2** WMI namespace that are
81+
related to disks, you can use a query such as the one shown here.
82+
83+
```powershell
84+
Get-WmiObject -List *Disk*
85+
```
86+
87+
To find WMI classes that are related to memory, you might use a query such as
88+
the one shown here.
89+
90+
```powershell
91+
Get-WmiObject -List *Memory*
92+
```
93+
94+
The CIM cmdlets also provide the ability to discover WMI classes. To do this,
95+
use the `Get-CimClass` cmdlet. The command shown here lists WMI classes related
96+
to video.
97+
98+
```powershell
99+
Get-CimClass *Video*
100+
```
101+
102+
Tab expansion works when changing WMI namespaces, and therefore use of tab
103+
expansion makes sub-WMI namespaces easily discoverable. In the following
104+
example, the `Get-CimClass` cmdlet lists WMI classes related to power settings.
105+
To find it, type the **root/CIMV2** namespace and then press the Tab key
106+
several times until the **power** namespace appears. Here is the command:
107+
108+
```powershell
109+
Get-CimClass *Power* -Namespace root/CIMV2/power
110+
```

reference/7.4/Microsoft.PowerShell.Core/About/about_WQL.md

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -712,10 +712,8 @@ Get-CimInstance -Query $q
712712
- [about_Special_Characters][02]
713713
- [about_Quoting_Rules][01]
714714
- [about_WMI][04]
715-
- [about_WMI_Cmdlets][03]
716715

717716
<!-- link references -->
718717
[01]: about_Quoting_Rules.md
719718
[02]: about_Special_Characters.md
720-
[03]: about_WMI_Cmdlets.md
721719
[04]: about_WMI.md
Lines changed: 110 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,110 @@
1+
---
2+
description: Windows Management Instrumentation (WMI) uses the Common Information Model (CIM) to represent systems, applications, networks, devices, and other manageable components of the modern enterprise.
3+
Locale: en-US
4+
ms.date: 01/03/2018
5+
online version: https://learn.microsoft.com/powershell/module/microsoft.powershell.core/about/about_wmi?view=powershell-7.5&WT.mc_id=ps-gethelp
6+
schema: 2.0.0
7+
title: about_WMI
8+
---
9+
10+
# about_WMI
11+
12+
## Short description
13+
14+
Windows Management Instrumentation (WMI) uses the Common Information Model
15+
(CIM) to represent systems, applications, networks, devices, and other
16+
manageable components of the modern enterprise.
17+
18+
## Long description
19+
20+
Windows Management Instrumentation (WMI) is Microsoft's implementation of
21+
Web-Based Enterprise Management (WBEM), the industry standard.
22+
23+
Classic WMI uses DCOM to communicate with networked devices to manage remote
24+
systems. Windows PowerShell 3.0 introduces a CIM provider model that uses WinRM
25+
to remove the dependency on DCOM. This CIM provider model also uses new WMI
26+
provider APIs that enable developers to write Windows PowerShell cmdlets in
27+
native code (C++).
28+
29+
Don't confuse WMI providers with Windows PowerShell providers. Many Windows
30+
features have an associated WMI provider that exposes their management
31+
capabilities. To get WMI providers, run a WMI query that gets instances of the
32+
**__Provider** WMI class, such as the following query.
33+
34+
```powershell
35+
Get-WmiObject -Class __Provider
36+
```
37+
38+
## Three components of WMI
39+
40+
The following three components of WMI interact with Windows PowerShell:
41+
Namespaces, Providers, and Classes.
42+
43+
WMI Namespaces organize WMI providers and WMI classes into groups of related
44+
components. In this way, they're similar to .NET Framework namespaces.
45+
Namespaces aren't physical locations, but are more like logical databases. All
46+
WMI namespaces are instances of the __Namespace system class. The default WMI
47+
namespace is **root/CIMV2** (since Microsoft Windows 2000). To use Windows
48+
PowerShell to get WMI namespaces in the current session, use a command with the
49+
following format.
50+
51+
```powershell
52+
Get-WmiObject -Class __Namespace
53+
```
54+
55+
To get WMI namespaces in other namespaces, use the Namespace parameter to
56+
change the location of the search. The following command finds WMI namespaces
57+
that reside in the **root/CIMV2/Applications** namespace.
58+
59+
```powershell
60+
Get-WmiObject -Class __Namespace -Namespace root/CIMV2/Applications
61+
```
62+
63+
WMI namespaces are hierarchical. Therefore, obtaining a list of all namespaces
64+
on a particular system requires performing a recursive query starting at the
65+
root namespace.
66+
67+
WMI Providers expose information about Windows manageable objects. A provider
68+
retrieves data from a component, and passes that data through WMI to a
69+
management application, such as Windows PowerShell. Most WMI providers are
70+
dynamic providers, which means that they obtain the data dynamically when it's
71+
requested through the management application.
72+
73+
## Finding WMI classes
74+
75+
In a default Windows 8 installation, there are more than 1,100 WMI classes in
76+
**root/CIMV2**. With this many WMI classes, the challenge becomes identifying
77+
the appropriate WMI class to use to perform a specific task. Windows PowerShell
78+
3.0 provides two ways to find WMI classes that are related to a specific topic.
79+
80+
For example, to find WMI classes in the **root/CIMV2** WMI namespace that are
81+
related to disks, you can use a query such as the one shown here.
82+
83+
```powershell
84+
Get-WmiObject -List *Disk*
85+
```
86+
87+
To find WMI classes that are related to memory, you might use a query such as
88+
the one shown here.
89+
90+
```powershell
91+
Get-WmiObject -List *Memory*
92+
```
93+
94+
The CIM cmdlets also provide the ability to discover WMI classes. To do this,
95+
use the `Get-CimClass` cmdlet. The command shown here lists WMI classes related
96+
to video.
97+
98+
```powershell
99+
Get-CimClass *Video*
100+
```
101+
102+
Tab expansion works when changing WMI namespaces, and therefore use of tab
103+
expansion makes sub-WMI namespaces easily discoverable. In the following
104+
example, the `Get-CimClass` cmdlet lists WMI classes related to power settings.
105+
To find it, type the **root/CIMV2** namespace and then press the Tab key
106+
several times until the **power** namespace appears. Here is the command:
107+
108+
```powershell
109+
Get-CimClass *Power* -Namespace root/CIMV2/power
110+
```

reference/7.5/Microsoft.PowerShell.Core/About/about_WQL.md

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -712,10 +712,8 @@ Get-CimInstance -Query $q
712712
- [about_Special_Characters][02]
713713
- [about_Quoting_Rules][01]
714714
- [about_WMI][04]
715-
- [about_WMI_Cmdlets][03]
716715

717716
<!-- link references -->
718717
[01]: about_Quoting_Rules.md
719718
[02]: about_Special_Characters.md
720-
[03]: about_WMI_Cmdlets.md
721719
[04]: about_WMI.md
Lines changed: 110 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,110 @@
1+
---
2+
description: Windows Management Instrumentation (WMI) uses the Common Information Model (CIM) to represent systems, applications, networks, devices, and other manageable components of the modern enterprise.
3+
Locale: en-US
4+
ms.date: 01/03/2018
5+
online version: https://learn.microsoft.com/powershell/module/microsoft.powershell.core/about/about_wmi?view=powershell-7.6&WT.mc_id=ps-gethelp
6+
schema: 2.0.0
7+
title: about_WMI
8+
---
9+
10+
# about_WMI
11+
12+
## Short description
13+
14+
Windows Management Instrumentation (WMI) uses the Common Information Model
15+
(CIM) to represent systems, applications, networks, devices, and other
16+
manageable components of the modern enterprise.
17+
18+
## Long description
19+
20+
Windows Management Instrumentation (WMI) is Microsoft's implementation of
21+
Web-Based Enterprise Management (WBEM), the industry standard.
22+
23+
Classic WMI uses DCOM to communicate with networked devices to manage remote
24+
systems. Windows PowerShell 3.0 introduces a CIM provider model that uses WinRM
25+
to remove the dependency on DCOM. This CIM provider model also uses new WMI
26+
provider APIs that enable developers to write Windows PowerShell cmdlets in
27+
native code (C++).
28+
29+
Don't confuse WMI providers with Windows PowerShell providers. Many Windows
30+
features have an associated WMI provider that exposes their management
31+
capabilities. To get WMI providers, run a WMI query that gets instances of the
32+
**__Provider** WMI class, such as the following query.
33+
34+
```powershell
35+
Get-WmiObject -Class __Provider
36+
```
37+
38+
## Three components of WMI
39+
40+
The following three components of WMI interact with Windows PowerShell:
41+
Namespaces, Providers, and Classes.
42+
43+
WMI Namespaces organize WMI providers and WMI classes into groups of related
44+
components. In this way, they're similar to .NET Framework namespaces.
45+
Namespaces aren't physical locations, but are more like logical databases. All
46+
WMI namespaces are instances of the __Namespace system class. The default WMI
47+
namespace is **root/CIMV2** (since Microsoft Windows 2000). To use Windows
48+
PowerShell to get WMI namespaces in the current session, use a command with the
49+
following format.
50+
51+
```powershell
52+
Get-WmiObject -Class __Namespace
53+
```
54+
55+
To get WMI namespaces in other namespaces, use the Namespace parameter to
56+
change the location of the search. The following command finds WMI namespaces
57+
that reside in the **root/CIMV2/Applications** namespace.
58+
59+
```powershell
60+
Get-WmiObject -Class __Namespace -Namespace root/CIMV2/Applications
61+
```
62+
63+
WMI namespaces are hierarchical. Therefore, obtaining a list of all namespaces
64+
on a particular system requires performing a recursive query starting at the
65+
root namespace.
66+
67+
WMI Providers expose information about Windows manageable objects. A provider
68+
retrieves data from a component, and passes that data through WMI to a
69+
management application, such as Windows PowerShell. Most WMI providers are
70+
dynamic providers, which means that they obtain the data dynamically when it's
71+
requested through the management application.
72+
73+
## Finding WMI classes
74+
75+
In a default Windows 8 installation, there are more than 1,100 WMI classes in
76+
**root/CIMV2**. With this many WMI classes, the challenge becomes identifying
77+
the appropriate WMI class to use to perform a specific task. Windows PowerShell
78+
3.0 provides two ways to find WMI classes that are related to a specific topic.
79+
80+
For example, to find WMI classes in the **root/CIMV2** WMI namespace that are
81+
related to disks, you can use a query such as the one shown here.
82+
83+
```powershell
84+
Get-WmiObject -List *Disk*
85+
```
86+
87+
To find WMI classes that are related to memory, you might use a query such as
88+
the one shown here.
89+
90+
```powershell
91+
Get-WmiObject -List *Memory*
92+
```
93+
94+
The CIM cmdlets also provide the ability to discover WMI classes. To do this,
95+
use the `Get-CimClass` cmdlet. The command shown here lists WMI classes related
96+
to video.
97+
98+
```powershell
99+
Get-CimClass *Video*
100+
```
101+
102+
Tab expansion works when changing WMI namespaces, and therefore use of tab
103+
expansion makes sub-WMI namespaces easily discoverable. In the following
104+
example, the `Get-CimClass` cmdlet lists WMI classes related to power settings.
105+
To find it, type the **root/CIMV2** namespace and then press the Tab key
106+
several times until the **power** namespace appears. Here is the command:
107+
108+
```powershell
109+
Get-CimClass *Power* -Namespace root/CIMV2/power
110+
```

0 commit comments

Comments
 (0)