Modules were introduced with the release of PowerShell version 2.0. Modules represented a significant step forward over snap-ins. Unlike snap-ins, modules do not have to be formally installed or registered for use with PowerShell.
It is most common to find a module that targets a specific system or focuses on a small set of related operations. For example, the Microsoft.PowerShell.LocalAccounts module contains commands for interacting with the local account database (users and groups).
A module may be binary, script, dynamic, or manifest:
- Binary modules: These are written in a language such as C# or VB.NET, and then compiled into a dynamic-link library (DLL).
- Script modules: These are a collection of functions written in the PowerShell language. The commands typically reside in a script module file (PSM1).
- Dynamic modules: These are created using the New...