Delen via


Get-Module

Vermeld de modules die zijn geïmporteerd in de huidige sessie of die kunnen worden geïmporteerd vanuit psModulePath.

Syntaxis

Get-Module
   [[-Name] <String[]>]
   [-FullyQualifiedName <ModuleSpecification[]>]
   [-All]
   [<CommonParameters>]
Get-Module
   [[-Name] <String[]>]
   [-FullyQualifiedName <ModuleSpecification[]>]
   [-All]
   [-ListAvailable]
   [-PSEdition <String>]
   [-SkipEditionCheck]
   [-Refresh]
   [<CommonParameters>]
Get-Module
   [[-Name] <String[]>]
   [-FullyQualifiedName <ModuleSpecification[]>]
   [-ListAvailable]
   [-PSEdition <String>]
   [-SkipEditionCheck]
   [-Refresh]
   -PSSession <PSSession>
   [<CommonParameters>]
Get-Module
   [[-Name] <String[]>]
   [-FullyQualifiedName <ModuleSpecification[]>]
   [-ListAvailable]
   [-SkipEditionCheck]
   [-Refresh]
   -CimSession <CimSession>
   [-CimResourceUri <Uri>]
   [-CimNamespace <String>]
   [<CommonParameters>]

Description

De Get-Module cmdlet bevat de PowerShell-modules die zijn geïmporteerd of die kunnen worden geïmporteerd in een PowerShell-sessie. Zonder parameters haalt Get-Module u modules op die in de huidige sessie zijn geïmporteerd. De parameter ListAvailable wordt gebruikt om de modules weer te geven die beschikbaar zijn om te worden geïmporteerd uit de paden die zijn opgegeven in de omgevingsvariabele PSModulePath ($env:PSModulePath).

Het moduleobject dat Get-Module retourneert, bevat waardevolle informatie over de module. U kunt de moduleobjecten ook doorsluisen naar andere cmdlets, zoals de Import-Module en Remove-Module cmdlets.

Get-Module bevat modules, maar deze worden niet geïmporteerd. Vanaf Windows PowerShell 3.0 worden modules automatisch geïmporteerd wanneer u een opdracht in de module gebruikt, maar een Get-Module opdracht activeert geen automatische import. U kunt de modules ook importeren in uw sessie met behulp van de Import-Module cmdlet.

Vanaf Windows PowerShell 3.0 kunt u modules ophalen en vervolgens importeren uit externe sessies in de lokale sessie. Deze strategie maakt gebruik van de functie Impliciete externe communicatie van PowerShell en is gelijk aan het gebruik van de Import-PSSession cmdlet. Wanneer u opdrachten gebruikt in modules die zijn geïmporteerd uit een andere sessie, worden de opdrachten impliciet uitgevoerd in de externe sessie. Met deze functie kunt u de externe computer beheren vanuit de lokale sessie.

Vanaf Windows PowerShell 3.0 kunt u ook CIM-modules (Common Information Model) ophalen Get-Module Import-Module en importeren. CIM-modules definiëren cmdlets in CDXML-bestanden (Cmdlet Definition XML). Met deze functie kunt u cmdlets gebruiken die zijn geïmplementeerd in niet-beheerde codeassembly's, zoals die zijn geschreven in C++.

Impliciete externe communicatie kan worden gebruikt voor het beheren van externe computers waarvoor externe communicatie via PowerShell is ingeschakeld. Maak een PSSession op de externe computer en gebruik vervolgens de PSSession-parameter om Get-Module de PowerShell-modules in de externe sessie op te halen. Wanneer u een module uit de externe sessie importeert, worden de geïmporteerde opdrachten uitgevoerd in de sessie op de externe computer.

U kunt een vergelijkbare strategie gebruiken om computers te beheren waarvoor externe communicatie met PowerShell niet is ingeschakeld. Dit zijn computers waarop het Windows-besturingssysteem niet wordt uitgevoerd en computers met PowerShell, maar waarvoor externe communicatie met PowerShell niet is ingeschakeld.

Begin met het maken van een CIM-sessie op de externe computer. Een CIM-sessie is een verbinding met Windows Management Instrumentation (WMI) op de externe computer. Gebruik vervolgens de CIMSession-parameter om Get-Module CIM-modules op te halen uit de CIM-sessie. Wanneer u een CIM-module importeert met behulp van de Import-Module cmdlet en vervolgens de geïmporteerde opdrachten uitvoert, worden de opdrachten impliciet uitgevoerd op de externe computer. U kunt deze WMI- en CIM-strategie gebruiken om de externe computer te beheren.

Voorbeelden

Voorbeeld 1: Modules importeren in de huidige sessie

Get-Module

Met deze opdracht worden modules ophaalt die zijn geïmporteerd in de huidige sessie.

Voorbeeld 2: Geïnstalleerde modules en beschikbare modules ophalen

Get-Module -ListAvailable

Met deze opdracht worden de modules opgehaald die op de computer zijn geïnstalleerd en kunnen worden geïmporteerd in de huidige sessie.

Get-Module zoekt naar beschikbare modules in het pad dat is opgegeven door de omgevingsvariabele $env:PSModulePath . Zie about_Modules en about_Environment_Variables voor meer informatie over PSModulePath.

Voorbeeld 3: Alle geëxporteerde bestanden ophalen

Get-Module -ListAvailable -All

Met deze opdracht worden alle geëxporteerde bestanden voor alle beschikbare modules opgeslagen.

Voorbeeld 4: Een module ophalen op basis van de volledig gekwalificeerde naam

$FullyQualifiedName = @{ModuleName="Microsoft.PowerShell.Management";ModuleVersion="3.1.0.0"}
Get-Module -FullyQualifiedName $FullyQualifiedName | Format-Table -Property Name,Version

Name                             Version
----                             -------
Microsoft.PowerShell.Management  3.1.0.0

In dit voorbeeld wordt de Module Microsoft.PowerShell.Management ophaalt door de volledig gekwalificeerde naam van de module op te geven met behulp van de parameter FullyQualifiedName . De opdracht voert vervolgens de resultaten in de Format-Table cmdlet uit om de resultaten op te maken als een tabel met naam en versie als de kolomkoppen.

In een volledig gekwalificeerde naam voor een module fungeert de waarde ModuleVersion als minimale versie. In dit voorbeeld komt dit dus overeen met elke Microsoft.PowerShell.Management-module die versie 3.1.0.0 of hoger is.

Voorbeeld 5: Eigenschappen van een module ophalen

Get-Module | Get-Member -MemberType Property | Format-Table Name

Name
----
AccessMode
Author
ClrVersion
CompanyName
Copyright
Definition
Description
DotNetFrameworkVersion
ExportedAliases
ExportedCmdlets
ExportedCommands
ExportedFormatFiles
ExportedFunctions
ExportedTypeFiles
ExportedVariables
ExportedWorkflows
FileList
Guid
HelpInfoUri
LogPipelineExecutionDetails
ModuleBase
ModuleList
ModuleType
Name
NestedModules
OnRemove
Path
PowerShellHostName
PowerShellHostVersion
PowerShellVersion
PrivateData
ProcessorArchitecture
RequiredAssemblies
RequiredModules
RootModule
Scripts
SessionState
Version

Met deze opdracht worden de eigenschappen opgehaald van het PSModuleInfo-object dat Get-Module wordt geretourneerd. Er is één object voor elk modulebestand.

U kunt de eigenschappen gebruiken om de moduleobjecten op te maken en te filteren. Zie EIGENSCHAPPEN van PSModuleInfo voor meer informatie over de eigenschappen.

De uitvoer bevat de nieuwe eigenschappen, zoals Author en CompanyName, die zijn geïntroduceerd in Windows PowerShell 3.0.

Voorbeeld 6: Alle modules groeperen op naam

Get-Module -ListAvailable -All | Format-Table -Property Name, Moduletype, Path -Groupby Name

Name: AppLocker

Name      ModuleType Path
----      ---------- ----
AppLocker   Manifest C:\Windows\system32\WindowsPowerShell\v1.0\Modules\AppLocker\AppLocker.psd1


   Name: Appx

Name ModuleType Path
---- ---------- ----
Appx   Manifest C:\Windows\system32\WindowsPowerShell\v1.0\Modules\Appx\en-US\Appx.psd1
Appx   Manifest C:\Windows\system32\WindowsPowerShell\v1.0\Modules\Appx\Appx.psd1
Appx     Script C:\Windows\system32\WindowsPowerShell\v1.0\Modules\Appx\Appx.psm1


   Name: BestPractices

Name          ModuleType Path
----          ---------- ----
BestPractices   Manifest C:\Windows\system32\WindowsPowerShell\v1.0\Modules\BestPractices\BestPractices.psd1


   Name: BitsTransfer

Name         ModuleType Path
----         ---------- ----
BitsTransfer   Manifest C:\Windows\system32\WindowsPowerShell\v1.0\Modules\BitsTransfer\BitsTransfer.psd1

Met deze opdracht worden alle modulebestanden, zowel geïmporteerd als beschikbaar, opgeslagen en vervolgens gegroepeerd op modulenaam. Hiermee kunt u de modulebestanden zien die elk script exporteert.

Voorbeeld 7: De inhoud van een modulemanifest weergeven

Met deze opdrachten wordt de inhoud van het modulemanifest voor de Windows PowerShell BitsTransfer-module weergegeven.

Modules zijn niet vereist om manifestbestanden te hebben. Wanneer ze wel een manifestbestand hebben, is het manifestbestand alleen vereist om een versienummer op te nemen. Manifestbestanden bieden echter vaak nuttige informatie over een module, de vereisten en de inhoud ervan.

# First command
$m = Get-Module -list -Name BitsTransfer

# Second command
Get-Content $m.Path

@ {
    GUID               = "{8FA5064B-8479-4c5c-86EA-0D311FE48875}"
    Author             = "Microsoft Corporation"
    CompanyName        = "Microsoft Corporation"
    Copyright          = "Microsoft Corporation. All rights reserved."
    ModuleVersion      = "1.0.0.0"
    Description        = "Windows PowerShell File Transfer Module"
    PowerShellVersion  = "2.0"
    CLRVersion         = "2.0"
    NestedModules      = "Microsoft.BackgroundIntelligentTransfer.Management"
    FormatsToProcess   = "FileTransfer.Format.ps1xml"
    RequiredAssemblies = Join-Path $psScriptRoot "Microsoft.BackgroundIntelligentTransfer.Management.Interop.dll"
}

Met de eerste opdracht wordt het PSModuleInfo-object opgehaald dat de BitsTransfer-module vertegenwoordigt. Het object wordt opgeslagen in de $m variabele.

De tweede opdracht gebruikt de Get-Content cmdlet om de inhoud van het manifestbestand op te halen in het opgegeven pad. Er wordt een punt notatie gebruikt om het pad naar het manifestbestand op te halen, dat is opgeslagen in de eigenschap Path van het object. De uitvoer toont de inhoud van het modulemanifest.

Voorbeeld 8: Bestanden weergeven in modulemap

dir (Get-Module -ListAvailable FileTransfer).ModuleBase

Directory: C:\Windows\system32\WindowsPowerShell\v1.0\Modules\FileTransfer
Mode                LastWriteTime     Length Name
----                -------------     ------ ----
d----        12/16/2008  12:36 PM            en-US
-a---        11/19/2008  11:30 PM      16184 FileTransfer.Format.ps1xml
-a---        11/20/2008  11:30 PM       1044 FileTransfer.psd1
-a---        12/16/2008  12:20 AM     108544 Microsoft.BackgroundIntelligentTransfer.Management.Interop.dll

Met deze opdracht worden de bestanden in de map van de module weergegeven. Dit is een andere manier om te bepalen wat zich in een module bevindt voordat u deze importeert. Sommige modules hebben mogelijk Help-bestanden of ReadMe-bestanden die de module beschrijven.

Voorbeeld 9: Modules installeren op een computer

$s = New-PSSession -ComputerName Server01

Get-Module -PSSession $s -ListAvailable

Met deze opdrachten worden de modules opgehaald die op de Server01-computer zijn geïnstalleerd.

De eerste opdracht gebruikt de New-PSSession cmdlet om een PSSession te maken op de Server01-computer. Met de opdracht wordt de PSSession opgeslagen in de $s variabele.

De tweede opdracht maakt gebruik van de PSSession - en ListAvailable-parameters om Get-Module de modules op te halen in de PSSession in de $s variabele.

Als u modules van andere sessies naar de Import-Module cmdlet doorsluist, Import-Module importeert u de module in de huidige sessie met behulp van de impliciete externe functie. Dit komt overeen met het gebruik van de Import-PSSession cmdlet. U kunt de cmdlets uit de module in de huidige sessie gebruiken, maar opdrachten die deze cmdlets gebruiken, voeren de externe sessie daadwerkelijk uit. Zie voor meer informatie Import-Module en Import-PSSession.

Voorbeeld 10: Een computer beheren waarop het Windows-besturingssysteem niet wordt uitgevoerd

Met de opdrachten in dit voorbeeld kunt u de opslagsystemen beheren van een externe computer waarop het Windows-besturingssysteem niet wordt uitgevoerd. Omdat de beheerder van de computer de WMI-provider moduledetectie heeft geïnstalleerd, kunnen de CIM-opdrachten de standaardwaarden gebruiken, die zijn ontworpen voor de provider.

$cs = New-CimSession -ComputerName RSDGF03
Get-Module -CimSession $cs -Name Storage | Import-Module
Get-Command Get-Disk

CommandType     Name                  ModuleName
-----------     ----                  ----------
Function        Get-Disk              Storage

Get-Disk

Number Friendly Name              OperationalStatus          Total Size Partition Style
------ -------------              -----------------          ---------- ---------------
0      Virtual HD ATA Device      Online                          40 GB MBR

De eerste opdracht gebruikt de New-CimSession cmdlet om een sessie te maken op de RSDGF03 externe computer. De sessie maakt verbinding met WMI op de externe computer. Met de opdracht wordt de CIM-sessie opgeslagen in de $cs variabele.

De tweede opdracht maakt gebruik van de CIM-sessie in de $cs variabele om een Get-Module opdracht uit te voeren op de RSDGF03 computer. De opdracht gebruikt de parameter Name om de Storage-module op te geven. De opdracht maakt gebruik van een pijplijnoperator (|) om de Storage-module naar de Import-Module cmdlet te verzenden, waarmee deze in de lokale sessie wordt geïmporteerd.

Met de derde opdracht wordt de Get-Command cmdlet uitgevoerd op de Get-Disk opdracht in de Storage-module. Wanneer u een CIM-module in de lokale sessie importeert, converteert PowerShell de CDXML-bestanden die de CIM-module vertegenwoordigen in PowerShell-scripts, die worden weergegeven als functies in de lokale sessie.

Met de vierde opdracht wordt de Get-Disk opdracht uitgevoerd. Hoewel de opdracht is getypt in de lokale sessie, wordt deze impliciet uitgevoerd op de externe computer van waaruit deze is geïmporteerd. Met de opdracht worden objecten van de externe computer opgehaald en geretourneerd naar de lokale sessie.

Parameters

-All

Geeft aan dat met deze cmdlet alle modules in elke modulemap worden opgehaald, waaronder geneste modules, manifestbestanden (.psd1) bestanden, scriptmodulebestanden (.psm1) en binaire modulebestanden (.dll). Zonder deze parameter wordt Get-Module alleen de standaardmodule in elke modulemap opgehaald.

Type:SwitchParameter
Position:Named
Default value:False
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-CimNamespace

Hiermee geeft u de naamruimte van een alternatieve CIM-provider die CIM-modules beschikbaar maakt. De standaardwaarde is de naamruimte van de WMI-provider voor moduledetectie.

Gebruik deze parameter om CIM-modules op te halen van computers en apparaten waarop het Windows-besturingssysteem niet wordt uitgevoerd.

Deze parameter is geïntroduceerd in Windows PowerShell 3.0.

Type:String
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-CimResourceUri

Hiermee geeft u een alternatieve locatie voor CIM-modules. De standaardwaarde is de resource-URI van de WMI-provider voor moduledetectie op de externe computer.

Gebruik deze parameter om CIM-modules op te halen van computers en apparaten waarop het Windows-besturingssysteem niet wordt uitgevoerd.

Deze parameter is geïntroduceerd in Windows PowerShell 3.0.

Type:Uri
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-CimSession

Hiermee geeft u een CIM-sessie op de externe computer. Voer een variabele in die de CIM-sessie of een opdracht bevat die de CIM-sessie ophaalt, zoals een Get-CimSession-opdracht .

Get-Module gebruikt de CIM-sessieverbinding om modules op te halen van de externe computer. Wanneer u de module importeert met behulp van de Import-Module cmdlet en de opdrachten uit de geïmporteerde module in de huidige sessie gebruikt, worden de opdrachten daadwerkelijk uitgevoerd op de externe computer.

U kunt deze parameter gebruiken om modules op te halen van computers en apparaten waarop het Windows-besturingssysteem niet wordt uitgevoerd, en computers met PowerShell, maar waarvoor externe communicatie met PowerShell niet is ingeschakeld.

De parameter CimSession haalt alle modules in de CIMSession op. U kunt echter alleen op CIM gebaseerde en CDXML-modules (Cmdlet Definition XML) importeren.

Type:CimSession
Position:Named
Default value:None
Vereist:True
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-FullyQualifiedName

De waarde kan een modulenaam, een volledige modulespecificatie of een pad naar een modulebestand zijn.

Wanneer de waarde een pad is, kan het pad volledig of relatief zijn. Een relatief pad wordt omgezet ten opzichte van het script dat de using-instructie bevat.

Wanneer de waarde een naam of modulespecificatie is, zoekt PowerShell naar de PSModulePath voor de opgegeven module.

Een modulespecificatie is een hashtabel met de volgende sleutels.

  • ModuleName - Vereist : hiermee geeft u de modulenaam op.
  • GUID - Optioneel : hiermee geeft u de GUID van de module op.
  • Het is ook vereist om ten minste één van de drie onderstaande sleutels op te geven.
    • ModuleVersion - Hiermee geeft u een minimaal acceptabele versie van de module.
    • MaximumVersion - Hiermee geeft u de maximaal aanvaardbare versie van de module.
    • RequiredVersion - Hiermee geeft u een exacte, vereiste versie van de module. Dit kan niet worden gebruikt met de andere versiesleutels.

U kunt de parameter FullyQualifiedName niet opgeven in dezelfde opdracht als een naamparameter .

Type:ModuleSpecification[]
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:True
Jokertekens accepteren:False

-ListAvailable

Geeft aan dat met deze cmdlet alle geïnstalleerde modules worden opgehaald. Get-Module haalt modules op in paden die worden vermeld in de omgevingsvariabele PSModulePath . Zonder deze parameter worden Get-Module alleen de modules opgehaald die beide worden vermeld in de omgevingsvariabele PSModulePath en die in de huidige sessie worden geladen. ListAvailable retourneert geen informatie over modules die niet zijn gevonden in de omgevingsvariabele PSModulePath , zelfs niet als deze modules in de huidige sessie worden geladen.

Type:SwitchParameter
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-Name

Hiermee geeft u namen of naampatronen op van modules die deze cmdlet ophaalt. Jokertekens zijn toegestaan. U kunt de namen ook doorsluisen naar Get-Module. U kunt de parameter FullyQualifiedName niet opgeven in dezelfde opdracht als een naamparameter .

De naam kan geen module-GUID als waarde accepteren. Als u modules wilt retourneren door een GUID op te geven, gebruikt u In plaats daarvan FullyQualifiedName .

Type:String[]
Position:0
Default value:None
Vereist:False
Pijplijninvoer accepteren:True
Jokertekens accepteren:True

-PSEdition

Haalt de modules op die ondersteuning bieden voor de opgegeven editie van PowerShell.

De aanvaardbare waarden voor deze parameter zijn:

  • Desktop
  • Core

De Get-Module cmdlet controleert de eigenschap CompatiblePSEditions van het PSModuleInfo-object op de opgegeven waarde en retourneert alleen de modules die deze hebben ingesteld.

Notitie

  • Desktop-editie: deze editie is gebaseerd op .NET Framework en biedt compatibiliteit met scripts en modules die zijn gericht op versies van PowerShell die worden uitgevoerd op edities van Windows met een volledige footprint zoals Server Core en Windows Desktop.
  • Core-editie: deze editie is gebaseerd op .NET Framework en biedt compatibiliteit met scripts en modules die zijn gericht op versies van PowerShell die worden uitgevoerd op edities van Windows met een verminderde footprint zoals Nano Server en Windows IoT.
Type:String
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-PSSession

Haalt de modules op in de opgegeven door de gebruiker beheerde PowerShell-sessie (PSSession). Voer een variabele in die de sessie bevat, een opdracht waarmee de sessie wordt uitgevoerd, zoals een Get-PSSession opdracht, of een opdracht waarmee de sessie wordt gemaakt, zoals een New-PSSession opdracht.

Wanneer de sessie is verbonden met een externe computer, moet u de parameter ListAvailable opgeven.

Een Get-Module opdracht die gebruikmaakt van de PSSession-parameter is gelijk aan het gebruik van de Invoke-Command cmdlet om een Get-Module -ListAvailable opdracht uit te voeren in een PSSession.

Deze parameter is geïntroduceerd in Windows PowerShell 3.0.

Type:PSSession
Position:Named
Default value:None
Vereist:True
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-Refresh

Geeft aan dat met deze cmdlet de cache van geïnstalleerde opdrachten wordt vernieuwd. De opdrachtcache wordt gemaakt wanneer de sessie wordt gestart. Hiermee kan de Get-Command cmdlet opdrachten ophalen uit modules die niet in de sessie worden geïmporteerd.

Deze parameter is ontworpen voor ontwikkelings- en testscenario's waarin de inhoud van modules is gewijzigd sinds de sessie is gestart.

Wanneer u de parameter Vernieuwen opgeeft in een opdracht, moet u ListAvailable opgeven.

Deze parameter is geïntroduceerd in Windows PowerShell 3.0.

Type:SwitchParameter
Position:Named
Default value:False
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-SkipEditionCheck

Hiermee wordt de controle van het veld CompatiblePSEditions overgeslagen.

Get-Module Standaard worden modules weggelaten in de %windir%\System32\WindowsPowerShell\v1.0\Modules map die niet worden opgegeven Core in het veld CompatiblePSEditions. Wanneer deze schakeloptie is ingesteld, worden modules zonder Core opgenomen, zodat modules onder het Pad van de Windows PowerShell-module die niet compatibel zijn met PowerShell v6 en hoger, worden geretourneerd.

In macOS en Linux doet deze parameter niets.

Zie about_PowerShell_Editions voor meer informatie.

Type:SwitchParameter
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

Invoerwaarden

String

U kunt modulenamen doorsluisen naar deze cmdlet.

Uitvoerwaarden

PSModuleInfo

Met deze cmdlet worden objecten geretourneerd die modules vertegenwoordigen. Wanneer u de parameter ListAvailable opgeeft, Get-Module wordt een ModuleInfoGrouping-object geretourneerd. Dit is een type PSModuleInfo-object met dezelfde eigenschappen en methoden.

Notities

PowerShell bevat de volgende aliassen voor Get-Module:

  • Alle platformen:

    • gmo
  • Vanaf Windows PowerShell 3.0 worden de belangrijkste opdrachten die zijn opgenomen in PowerShell, verpakt in modules. De uitzondering is Microsoft.PowerShell.Core, een module (PSSnapin). Standaard wordt alleen de module Microsoft.PowerShell.Core toegevoegd aan de sessie. Modules worden automatisch geïmporteerd bij eerste gebruik en u kunt de Import-Module cmdlet gebruiken om ze te importeren.

  • In Windows PowerShell 2.0 en in hostprogramma's die oudere sessies maken in latere versies van PowerShell, worden de kernopdrachten verpakt in modules (PSSnapins). De uitzondering is Microsoft.PowerShell.Core, wat altijd een module is. Externe sessies, zoals sessies die door de New-PSSession cmdlet zijn gestart, zijn ook sessies in oudere stijl die kernmodules bevatten.

    Zie CreateDefault2 Method voor meer informatie over de methode CreateDefault2 waarmee nieuwere sessies met kernmodules worden gemaakt.

  • Get-Module hiermee worden alleen modules opgehaald op locaties die zijn opgeslagen in de waarde van de omgevingsvariabele PSModulePath ($env:PSModulePath). De Import-Module cmdlet kan modules op andere locaties importeren, maar u kunt de Get-Module cmdlet niet gebruiken om ze op te halen.

  • Vanaf PowerShell 3.0 zijn er ook nieuwe eigenschappen toegevoegd aan het object dat Get-Module retourneert, zodat u nog gemakkelijker over modules kunt leren voordat ze worden geïmporteerd. Alle eigenschappen worden ingevuld voordat u importeert. Deze omvatten de eigenschappen ExportsCommands, ExportedCmdlets en ExportedFunctions met de opdrachten die door de module worden geëxporteerd.

  • De parameter ListAvailable krijgt alleen goed opgemaakte modules, dat wil gezegd mappen die ten minste één bestand bevatten waarvan de basisnaam hetzelfde is als de naam van de modulemap. De basisnaam is de naam zonder de bestandsnaamextensie. Mappen die bestanden met verschillende namen bevatten, worden beschouwd als containers, maar niet als modules.

    Als u modules wilt ophalen die zijn geïmplementeerd als DLL-bestanden, maar die niet zijn opgenomen in een modulemap, geeft u zowel de parameters ListAvailable als Alle parameters op.

  • Als u de CIM-sessiefunctie wilt gebruiken, moet de externe computer WS-Management remoting en Windows Management Instrumentation (WMI) hebben. Dit is de Microsoft-implementatie van de CIM-standaard (Common Information Model). De computer moet ook beschikken over de WMI-provider voor moduledetectie of een alternatieve WMI-provider met dezelfde basisfuncties.

    U kunt de CIM-sessiefunctie gebruiken op computers waarop het Windows-besturingssysteem niet wordt uitgevoerd en op Windows-computers met PowerShell, maar waarvoor externe communicatie met PowerShell niet is ingeschakeld.

    U kunt ook de CIM-parameters gebruiken om CIM-modules op te halen van computers waarop externe communicatie met PowerShell is ingeschakeld. Dit omvat de lokale computer. Wanneer u een CIM-sessie maakt op de lokale computer, gebruikt PowerShell DCOM in plaats van WMI om de sessie te maken.