Delen via


New-ModuleManifest

Hiermee maakt u een nieuw modulemanifest.

Syntaxis

New-ModuleManifest
   [-Path] <String>
   [-NestedModules <Object[]>]
   [-Guid <Guid>]
   [-Author <String>]
   [-CompanyName <String>]
   [-Copyright <String>]
   [-RootModule <String>]
   [-ModuleVersion <Version>]
   [-Description <String>]
   [-ProcessorArchitecture <ProcessorArchitecture>]
   [-PowerShellVersion <Version>]
   [-CLRVersion <Version>]
   [-DotNetFrameworkVersion <Version>]
   [-PowerShellHostName <String>]
   [-PowerShellHostVersion <Version>]
   [-RequiredModules <Object[]>]
   [-TypesToProcess <String[]>]
   [-FormatsToProcess <String[]>]
   [-ScriptsToProcess <String[]>]
   [-RequiredAssemblies <String[]>]
   [-FileList <String[]>]
   [-ModuleList <Object[]>]
   [-FunctionsToExport <String[]>]
   [-AliasesToExport <String[]>]
   [-VariablesToExport <String[]>]
   [-CmdletsToExport <String[]>]
   [-DscResourcesToExport <String[]>]
   [-CompatiblePSEditions <String[]>]
   [-PrivateData <Object>]
   [-Tags <String[]>]
   [-ProjectUri <Uri>]
   [-LicenseUri <Uri>]
   [-IconUri <Uri>]
   [-ReleaseNotes <String>]
   [-Prerelease <String>]
   [-RequireLicenseAcceptance]
   [-ExternalModuleDependencies <String[]>]
   [-HelpInfoUri <String>]
   [-PassThru]
   [-DefaultCommandPrefix <String>]
   [-WhatIf]
   [-Confirm] 
   [<CommonParameters>]

Description

De New-ModuleManifest cmdlet maakt een nieuw modulemanifestbestand (.psd1) en vult de waarden in en slaat het manifestbestand op in het opgegeven pad.

Auteurs van modules kunnen deze cmdlet gebruiken om een manifest voor hun module te maken. Een modulemanifest is een .psd1 bestand dat een hash-tabel bevat. De sleutels en waarden in de hash-tabel beschrijven de inhoud en kenmerken van de module, definiëren de vereisten en bepalen hoe de onderdelen worden verwerkt. Manifesten zijn niet vereist voor een module.

New-ModuleManifest maakt een manifest dat alle veelgebruikte manifestsleutels bevat, zodat u de standaarduitvoer kunt gebruiken als een manifestsjabloon. Als u waarden wilt toevoegen of wijzigen, of als u modulesleutels wilt toevoegen die niet door deze cmdlet worden toegevoegd, opent u het resulterende bestand in een teksteditor.

Elke parameter, met uitzondering van Path en PassThru, maakt een modulemanifestsleutel en de bijbehorende waarde. In een modulemanifest is alleen de ModuleVersion-sleutel vereist. Als u een parameter weglaat uit de opdracht, New-ModuleManifest maakt u een opmerkingtekenreeks voor de bijbehorende waarde die geen effect heeft, tenzij u in de parameterbeschrijving hebt opgegeven.

In PowerShell 2.0 New-ModuleManifest wordt u gevraagd om de waarden van veelgebruikte parameters die niet zijn opgegeven in de opdracht, naast de vereiste parameterwaarden. Vanaf PowerShell 3.0 New-ModuleManifest wordt alleen gevraagd wanneer de vereiste parameterwaarden niet zijn opgegeven.

Als u van plan bent om uw module te publiceren in de PowerShell Gallery, moet het manifest waarden voor bepaalde eigenschappen bevatten. Zie Vereiste metagegevens voor items die zijn gepubliceerd in de PowerShell Gallery in de galeriedocumentatie voor meer informatie.

Voorbeelden

Voorbeeld 1: een nieuw modulemanifest maken

In dit voorbeeld wordt een nieuw modulemanifest gemaakt in het bestand dat is opgegeven door de parameter Path . De passThru-parameter verzendt de uitvoer naar de pijplijn en naar het bestand.

De uitvoer toont de standaardwaarden van alle sleutels in het manifest.

New-ModuleManifest -Path C:\ps-test\Test-Module\Test-Module.psd1 -PassThru

#
# Module manifest for module 'Test-Module'
#
# Generated by: ContosoAdmin
#
# Generated on: 7/12/2019
#

@{

# Script module or binary module file associated with this manifest.
# RootModule = ''

# Version number of this module.
ModuleVersion = '0.0.1'

# Supported PSEditions
# CompatiblePSEditions = @()

# ID used to uniquely identify this module
GUID = 'e1826c6e-c420-4eef-9ac8-185e3669ca6a'

# Author of this module
Author = 'ContosoAdmin'

# Company or vendor of this module
CompanyName = 'Unknown'

# Copyright statement for this module
Copyright = '(c) ContosoAdmin. All rights reserved.'

# Description of the functionality provided by this module
# Description = ''

# Minimum version of the PowerShell engine required by this module
# PowerShellVersion = ''

# Name of the PowerShell host required by this module
# PowerShellHostName = ''

# Minimum version of the PowerShell host required by this module
# PowerShellHostVersion = ''

# Minimum version of Microsoft .NET Framework required by this module. This prerequisite is valid for the PowerShell Desktop edition only.
# DotNetFrameworkVersion = ''

# Minimum version of the common language runtime (CLR) required by this module. This prerequisite is valid for the PowerShell Desktop edition only.
# CLRVersion = ''

# Processor architecture (None, X86, Amd64) required by this module
# ProcessorArchitecture = ''

# Modules that must be imported into the global environment prior to importing this module
# RequiredModules = @()

# Assemblies that must be loaded prior to importing this module
# RequiredAssemblies = @()

# Script files (.ps1) that are run in the caller's environment prior to importing this module.
# ScriptsToProcess = @()

# Type files (.ps1xml) to be loaded when importing this module
# TypesToProcess = @()

# Format files (.ps1xml) to be loaded when importing this module
# FormatsToProcess = @()

# Modules to import as nested modules of the module specified in RootModule/ModuleToProcess
# NestedModules = @()

# Functions to export from this module, for best performance, do not use wildcards and do not delete the entry, use an empty array if there are no functions to export.
FunctionsToExport = @()

# Cmdlets to export from this module, for best performance, do not use wildcards and do not delete the entry, use an empty array if there are no cmdlets to export.
CmdletsToExport = @()

# Variables to export from this module
VariablesToExport = '*'

# Aliases to export from this module, for best performance, do not use wildcards and do not delete the entry, use an empty array if there are no aliases to export.
AliasesToExport = @()

# DSC resources to export from this module
# DscResourcesToExport = @()

# List of all modules packaged with this module
# ModuleList = @()

# List of all files packaged with this module
# FileList = @()

# Private data to pass to the module specified in RootModule/ModuleToProcess. This may also contain a PSData hashtable with additional module metadata used by PowerShell.
PrivateData = @{

    PSData = @{

        # Tags applied to this module. These help with module discovery in online galleries.
        # Tags = @()

        # A URL to the license for this module.
        # LicenseUri = ''

        # A URL to the main website for this project.
        # ProjectUri = ''

        # A URL to an icon representing this module.
        # IconUri = ''

        # ReleaseNotes of this module
        # ReleaseNotes = ''

        # Prerelease string of this module
        # Prerelease = ''

        # Flag to indicate whether the module requires explicit user acceptance for install/update/save
        # RequireLicenseAcceptance = $false

        # External dependent modules of this module
        # ExternalModuleDependencies = @()

    } # End of PSData hashtable

} # End of PrivateData hashtable

# HelpInfo URI of this module
# HelpInfoURI = ''

# Default prefix for commands exported from this module. Override the default prefix using Import-Module -Prefix.
# DefaultCommandPrefix = ''

}

Voorbeeld 2: een nieuw manifest maken met een aantal vooraf ingevulde instellingen

In dit voorbeeld wordt een nieuw modulemanifest gemaakt. Hierbij worden de parameters PowerShellVersion en AliasesToExport gebruikt om waarden toe te voegen aan de bijbehorende manifestsleutels.

$moduleSettings = @{
    PowerShellVersion = 1.0
    Path   = 'C:\ps-test\ManifestTest.psd1'
    AliasesToExport   = @(
      'JKBC'
      'DRC'
      'TAC'
    )
}
New-ModuleManifest @moduleSettings

Voorbeeld 3: een manifest maken waarvoor andere modules zijn vereist

In dit voorbeeld wordt een tekenreeksindeling gebruikt om de naam van de BitsTransfer-module en de hashtabelindeling op te geven om de naam, een GUID en een versie van de PSScheduledJob-module op te geven.

$moduleSettings = @{
  RequiredModules = ("BitsTransfer", @{
    ModuleName="PSScheduledJob"
    ModuleVersion="1.0.0.0";
    GUID="50cdb55f-5ab7-489f-9e94-4ec21ff51e59"
  })
  Path = 'C:\ps-test\ManifestTest.psd1'
}
New-ModuleManifest @moduleSettings

In dit voorbeeld ziet u hoe u de tekenreeks- en hashtabelindelingen van de parameter ModuleList, RequiredModules en NestedModules gebruikt. U kunt tekenreeksen en hashtabellen combineren in dezelfde parameterwaarde.

Voorbeeld 4: Een manifest maken dat ondersteuning biedt voor updatebare Help

In dit voorbeeld wordt de parameter HelpInfoUri gebruikt om een HelpInfoUri-sleutel te maken in het modulemanifest. De waarde van de parameter en de sleutel moeten beginnen met http of https. Deze waarde vertelt het Help-systeem Updatable Help waar het HelpInfo XML-informatiebestand voor de module kan worden bijgewerkt.

$moduleSettings = @{
  HelpInfoUri = 'http://https://go.microsoft.com/fwlink/?LinkID=603'
  Path = 'C:\ps-test\ManifestTest.psd1'
}
New-ModuleManifest @moduleSettings

Zie about_Updatable_Help voor informatie over Help bijwerken. Zie Ondersteunende Help-informatie over het XML-bestand help voor Help voor Help-informatie over help die kan worden bijgewerkt.

Voorbeeld 5: modulegegevens ophalen

In dit voorbeeld ziet u hoe u de configuratiewaarden van een module kunt ophalen. De waarden in het modulemanifest worden weergegeven in de waarden van eigenschappen van het moduleobject.

De Get-Module cmdlet wordt gebruikt om de module Microsoft.PowerShell.Diagnostics op te halen met behulp van de parameter List . Met de opdracht wordt de module naar de Format-List cmdlet verzonden om alle eigenschappen en waarden van het moduleobject weer te geven.

Get-Module Microsoft.PowerShell.Diagnostics -List | Format-List -Property *

LogPipelineExecutionDetails : False
Name                        : Microsoft.PowerShell.Diagnostics
Path                        : C:\Windows\system32\WindowsPowerShell\v1.0\Modules\Microsoft.PowerShell.Diagnostics\Micro
                              soft.PowerShell.Diagnostics.psd1
Definition                  :
Description                 :
Guid                        : ca046f10-ca64-4740-8ff9-2565dba61a4f
HelpInfoUri                 : https://go.microsoft.com/fwlink/?LinkID=210596
ModuleBase                  : C:\Windows\system32\WindowsPowerShell\v1.0\Modules\Microsoft.PowerShell.Diagnostics
PrivateData                 :
Version                     : 3.0.0.0
ModuleType                  : Manifest
Author                      : Microsoft Corporation
AccessMode                  : ReadWrite
ClrVersion                  : 4.0
CompanyName                 : Microsoft Corporation
Copyright                   : Microsoft Corporation. All rights reserved.
DotNetFrameworkVersion      :
ExportedFunctions           : {}
ExportedCmdlets             : {[Get-WinEvent, Get-WinEvent], [Get-Counter, Get-Counter], [Import-Counter,
                              Import-Counter], [Export-Counter, Export-Counter]...}
ExportedCommands            : {[Get-WinEvent, Get-WinEvent], [Get-Counter, Get-Counter], [Import-Counter,
                              Import-Counter], [Export-Counter, Export-Counter]...}
FileList                    : {}
ModuleList                  : {}
NestedModules               : {}
PowerShellHostName          :
PowerShellHostVersion       :
PowerShellVersion           : 3.0
ProcessorArchitecture       : None
Scripts                     : {}
RequiredAssemblies          : {}
RequiredModules             : {}
RootModule                  :
ExportedVariables           : {}
ExportedAliases             : {}
ExportedWorkflows           : {}
SessionState                :
OnRemove                    :
ExportedFormatFiles         : {C:\Windows\system32\WindowsPowerShell\v1.0\Event.format.ps1xml,
                              C:\Windows\system32\WindowsPowerShell\v1.0\Diagnostics.format.ps1xml}
ExportedTypeFiles           : {C:\Windows\system32\WindowsPowerShell\v1.0\GetEvent.types.ps1xml}

Parameters

-AliasesToExport

Hiermee geeft u de aliassen op die de module exporteert. Jokertekens zijn toegestaan.

U kunt deze parameter gebruiken om de aliassen te beperken die door de module worden geëxporteerd. Er kunnen aliassen worden verwijderd uit de lijst met geëxporteerde aliassen, maar er kunnen geen aliassen aan de lijst worden toegevoegd.

Als u deze parameter weglaat, New-ModuleManifest maakt u een AliasesToExport-sleutel met de waarde * (alle), wat betekent dat alle aliassen die in de module zijn gedefinieerd, door het manifest worden geëxporteerd.

Type:String[]
Position:Named
Default value:* (all)
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:True

-Author

Hiermee geeft u de auteur van de module op.

Als u deze parameter weglaat, New-ModuleManifest maakt u een Auteur-sleutel met de naam van de huidige gebruiker.

Type:String
Position:Named
Default value:Name of the current user
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-ClrVersion

Hiermee geeft u de minimale versie van de Common Language Runtime (CLR) van microsoft .NET Framework op die voor de module is vereist.

Notitie

Deze instelling is alleen geldig voor de PowerShell Desktop-editie, zoals Windows PowerShell 5.1, en is alleen van toepassing op .NET Framework-versies lager dan 4.5. Deze vereiste heeft geen effect voor nieuwere versies van PowerShell of .NET Framework.

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

-CmdletsToExport

Hiermee geeft u de cmdlets op die de module exporteert. Jokertekens zijn toegestaan.

U kunt deze parameter gebruiken om de cmdlets te beperken die door de module worden geëxporteerd. Het kan cmdlets verwijderen uit de lijst met geëxporteerde cmdlets, maar kan geen cmdlets toevoegen aan de lijst.

Als u deze parameter weglaat, New-ModuleManifest maakt u een CmdletsToExport-sleutel met de waarde * (alle), wat betekent dat alle cmdlets die in de module zijn gedefinieerd, door het manifest worden geëxporteerd.

Type:String[]
Position:Named
Default value:* (all)
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:True

-CompanyName

Identificeert het bedrijf of de leverancier die de module heeft gemaakt.

Als u deze parameter weglaat, New-ModuleManifest maakt u een CompanyName-sleutel met de waarde Onbekend.

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

-CompatiblePSEditions

Hiermee geeft u de compatibele PSEditions van de module. Zie Modules met compatibele PowerShell-edities voor meer informatie over PSEdition.

Type:String[]
Geaccepteerde waarden:Desktop, Core
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-Confirm

Hiermee wordt u gevraagd om bevestiging voordat u de cmdlet uitvoert.

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

Hiermee geeft u een copyright-instructie voor de module.

Als u deze parameter weglaat, New-ModuleManifest maakt u een Copyright-sleutel met de waarde (c) <year> <username>. All rights reserved. waar <year> het huidige jaar is en <username> is dit de waarde van de auteursleutel .

Type:String
Position:Named
Default value:(c) <year> <username>. All rights reserved.
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-DefaultCommandPrefix

Hiermee geeft u een voorvoegsel op dat wordt voorafgegaan door de zelfstandige naamwoorden van alle opdrachten in de module wanneer ze in een sessie worden geïmporteerd. Voer een tekenreeks voor het voorvoegsel in. Voorvoegsels voorkomen conflicten in de opdrachtnaam in de sessie van een gebruiker.

Modulegebruikers kunnen dit voorvoegsel overschrijven door de parameter Voorvoegsel van de Import-Module cmdlet op te geven.

Deze parameter is geïntroduceerd in PowerShell 3.0.

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

-Description

Beschrijft de inhoud van de module.

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

-DotNetFrameworkVersion

Hiermee geeft u de minimale versie van microsoft .NET Framework op die voor de module is vereist.

Notitie

Deze instelling is alleen geldig voor de PowerShell Desktop-editie, zoals Windows PowerShell 5.1, en is alleen van toepassing op .NET Framework-versies lager dan 4.5. Deze vereiste heeft geen effect voor nieuwere versies van PowerShell of .NET Framework.

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

-DscResourcesToExport

Hiermee geeft u de DSC-resources (Desired State Configuration) op die door de module worden geëxporteerd. Jokertekens zijn toegestaan.

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

-ExternalModuleDependencies

Een lijst met externe modules waarvan deze module afhankelijk is.

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

-FileList

Hiermee geeft u alle items op die zijn opgenomen in de module.

Deze sleutel is ontworpen om te fungeren als een module-inventaris. De bestanden die in de sleutel worden vermeld, worden opgenomen wanneer de module wordt gepubliceerd, maar functies worden niet automatisch geëxporteerd.

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

-FormatsToProcess

Hiermee geeft u de opmaakbestanden (.ps1xml) op die worden uitgevoerd wanneer de module wordt geïmporteerd.

Wanneer u een module importeert, voert PowerShell de Update-FormatData cmdlet uit met de opgegeven bestanden. Omdat opmaakbestanden niet binnen het bereik vallen, hebben ze invloed op alle sessiestatussen in de sessie.

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

-FunctionsToExport

Hiermee geeft u de functies op die door de module worden geëxporteerd. Jokertekens zijn toegestaan.

U kunt deze parameter gebruiken om de functies te beperken die door de module worden geëxporteerd. Het kan functies verwijderen uit de lijst met geëxporteerde aliassen, maar er kunnen geen functies aan de lijst worden toegevoegd.

Als u deze parameter weglaat, New-ModuleManifest maakt u een FunctionsToExport-sleutel met de waarde * (alle), wat betekent dat alle functies die in de module zijn gedefinieerd, door het manifest worden geëxporteerd.

Type:String[]
Position:Named
Default value:* (all)
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:True

-Guid

Hiermee geeft u een unieke id voor de module. De GUID kan worden gebruikt om onderscheid te maken tussen modules met dezelfde naam.

Als u deze parameter weglaat, New-ModuleManifest maakt u een GUID-sleutel in het manifest en genereert u een GUID voor de waarde.

Als u een nieuwe GUID wilt maken in PowerShell, typt [guid]::NewGuid()u .

Type:Guid
Position:Named
Default value:A GUID generated for the module
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-HelpInfoUri

Hiermee geeft u het internetadres van het XML-bestand HelpInfo voor de module. Voer een URI (Uniform Resource Identifier) in die begint met http of https.

Het XML-bestand helpinfo ondersteunt de Help-functie Updatable die is geïntroduceerd in PowerShell 3.0. Het bevat informatie over de locatie van downloadbare Help-bestanden voor de module en de versienummers van de nieuwste Help-bestanden voor elke ondersteunde landinstelling.

Zie about_Updatable_Help voor informatie over Help bijwerken. Zie Ondersteunende Help-informatie over het XML-bestand help voor Help voor Help-informatie over help die kan worden bijgewerkt.

Deze parameter is geïntroduceerd in PowerShell 3.0.

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

-IconUri

Hiermee geeft u de URL van een pictogram voor de module. Het opgegeven pictogram wordt weergegeven op de galeriewebpagina voor de module.

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

-LicenseUri

Hiermee geeft u de URL van licentievoorwaarden voor de module.

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

-ModuleList

Geeft een lijst weer van alle modules die zijn opgenomen in deze module.

Voer elke modulenaam in als een tekenreeks of als een hash-tabel met ModuleName - en ModuleVersion-sleutels . De hashtabel kan ook een optionele GUID-sleutel hebben. U kunt tekenreeksen en hashtabellen combineren in de parameterwaarde.

Deze sleutel is ontworpen om te fungeren als een module-inventaris. De modules die worden vermeld in de waarde van deze sleutel, worden niet automatisch verwerkt.

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

-ModuleVersion

Hiermee geeft u de versie van de module op.

Deze parameter is niet vereist, maar er is een ModuleVersion-sleutel vereist in het manifest. Als u deze parameter weglaat, New-ModuleManifest maakt u een ModuleVersion-sleutel met de waarde 1.0.

Type:Version
Position:Named
Default value:1.0
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-NestedModules

Hiermee geeft u scriptmodules (.psm1) en binaire modules (.dll) op die in de sessiestatus van de module worden geïmporteerd. De bestanden in de sleutel NestedModules worden uitgevoerd in de volgorde waarin ze worden vermeld in de waarde.

Voer elke modulenaam in als een tekenreeks of als een hash-tabel met ModuleName - en ModuleVersion-sleutels . De hashtabel kan ook een optionele GUID-sleutel hebben. U kunt tekenreeksen en hashtabellen combineren in de parameterwaarde.

Geneste modules bevatten doorgaans opdrachten die de hoofdmodule nodig heeft voor de interne verwerking. Standaard worden de opdrachten in geneste modules geëxporteerd van de sessiestatus van de module naar de sessiestatus van de aanroeper, maar de hoofdmodule kan de opdrachten beperken die worden geëxporteerd. Bijvoorbeeld met behulp van een Export-ModuleMember opdracht.

Geneste modules in de sessiestatus van de module zijn beschikbaar voor de hoofdmodule, maar worden niet geretourneerd door een Get-Module opdracht in de sessiestatus van de aanroeper.

Scripts (.ps1) die worden vermeld in de sleutel NestedModules , worden uitgevoerd in de sessiestatus van de module, niet in de sessiestatus van de aanroeper. Als u een script in de sessiestatus van de aanroeper wilt uitvoeren, vermeldt u de bestandsnaam van het script in de waarde van de Sleutel ScriptsToProcess in het manifest.

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

-PassThru

Hiermee schrijft u het resulterende modulemanifest naar de console en maakt u een .psd1 bestand. Deze cmdlet genereert standaard geen uitvoer.

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

-Path

Hiermee geeft u het pad en de bestandsnaam van het nieuwe modulemanifest. Voer een pad en bestandsnaam in met een .psd1 bestandsnaamextensie, zoals $pshome\Modules\MyModule\MyModule.psd1. De padparameter is vereist.

Als u het pad naar een bestaand bestand opgeeft, vervangt u het bestand zonder waarschuwing, New-ModuleManifest tenzij het bestand het kenmerk Alleen-lezen heeft.

Het manifest moet zich in de map van de module bevinden en de naam van het manifestbestand moet hetzelfde zijn als de naam van de modulemap, maar met een .psd1 bestandsnaamextensie.

Notitie

U kunt geen variabelen gebruiken, zoals $PSHOME of $HOME, als reactie op een prompt voor een padparameterwaarde . Als u een variabele wilt gebruiken, neemt u de parameter Path op in de opdracht.

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

-PowerShellHostName

Hiermee geeft u de naam op van het PowerShell-hostprogramma dat voor de module is vereist. Voer de naam in van het hostprogramma, zoals Windows PowerShell ISE Host of ConsoleHost. Jokertekens zijn niet toegestaan.

Als u de naam van een hostprogramma wilt zoeken, typt $Host.Nameu in het programma.

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

-PowerShellHostVersion

Hiermee geeft u de minimale versie van het PowerShell-hostprogramma op dat met de module werkt. Voer een versienummer in, zoals 1.1.

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

-PowerShellVersion

Hiermee geeft u de minimale versie van PowerShell op die met deze module werkt. U kunt bijvoorbeeld 1.0, 2.0 of 3.0 invoeren als de waarde van de parameter. Deze moet een X.X-indeling hebben. Als u bijvoorbeeld verzendt 5, genereert PowerShell een fout.

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

-Prerelease

Prerelease-tekenreeks van deze module. Als u een Prerelease-tekenreeks toevoegt, wordt de module geïdentificeerd als een voorlopige versie. Wanneer de module wordt gepubliceerd in de PowerShell Gallery, worden deze gegevens gebruikt om prereleasepakketten te identificeren. Als u prereleasepakketten wilt verkrijgen uit de galerie, moet u de parameter AllowPrerelease gebruiken met de PowerShellGet-opdrachten Find-Module, Install-Moduleen Update-ModuleSave-Module.

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

-PrivateData

Hiermee geeft u gegevens op die worden doorgegeven aan de module wanneer deze worden geïmporteerd.

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

-ProcessorArchitecture

Hiermee geeft u de processorarchitectuur op die nodig is voor de module. Geldige waarden zijn x86, AMD64, IA64, MSIL en None (onbekend of niet opgegeven).

Type:ProcessorArchitecture
Geaccepteerde waarden:None, MSIL, X86, IA64, Amd64, Arm
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-ProjectUri

Hiermee geeft u de URL van een webpagina over dit project.

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

-ReleaseNotes

Hiermee geeft u releaseopmerkingen op.

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

-RequiredAssemblies

Hiermee geeft u de assemblybestanden (.dll) op die de module nodig heeft. Voer de namen van de assemblybestanden in. PowerShell laadt de opgegeven assembly's voordat u typen of indelingen bijwerkt, geneste modules importeert of het modulebestand importeert dat is opgegeven in de waarde van de RootModule-sleutel .

Gebruik deze parameter om alle assembly's weer te geven die de module nodig heeft, inclusief assembly's die moeten worden geladen om opmaak- of typebestanden bij te werken die worden vermeld in de sleutels FormatsToProcess of TypesToProcess , zelfs als deze assembly's ook worden vermeld als binaire modules in de sleutel NestedModules .

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

-RequiredModules

Hiermee geeft u modules op die de globale sessiestatus moeten hebben. Als de vereiste modules niet de status van de globale sessie hebben, worden deze geïmporteerd in PowerShell. Als de vereiste modules niet beschikbaar zijn, mislukt de Import-Module opdracht.

Voer elke modulenaam in als een tekenreeks of als een hash-tabel met ModuleName - en ModuleVersion-sleutels . De hashtabel kan ook een optionele GUID-sleutel hebben. U kunt tekenreeksen en hashtabellen combineren in de parameterwaarde.

In PowerShell 2.0 Import-Module worden de vereiste modules niet automatisch geïmporteerd. Er wordt alleen gecontroleerd of de vereiste modules de status van de globale sessie hebben.

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

-RequireLicenseAcceptance

Vlag om aan te geven of voor de module expliciete gebruikersacceptatie is vereist voor installatie, update of opslaan.

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

-RootModule

Hiermee geeft u het primaire of hoofdbestand van de module. Voer de bestandsnaam van een script (), een scriptmodule (.ps1.psm1), een modulemanifest(.psd1), een assembly (.dll), een XML-bestand met de cmdletdefinitie () of een werkstroom (.cdxml.xaml) in. Wanneer de module wordt geïmporteerd, worden de leden die uit het hoofdmodulebestand worden geëxporteerd, geïmporteerd in de sessiestatus van de aanroeper.

Als een module een manifestbestand heeft en er geen hoofdbestand is aangewezen in de rootModule-sleutel , wordt het manifest het primaire bestand voor de module en wordt de module een manifestmodule (ModuleType = Manifest).

Als u leden wilt exporteren uit .psm1 of .dll bestanden in een module met een manifest, moeten de namen van deze bestanden worden opgegeven in de waarden van de sleutels RootModule of NestedModules in het manifest. Anders worden hun leden niet geëxporteerd.

Notitie

In PowerShell 2.0 werd deze sleutel ModuleToProcess genoemd. U kunt de parameternaam van de RootModule of de bijbehorende ModuleToProcess-alias gebruiken.

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

-ScriptsToProcess

Hiermee geeft u scriptbestanden op.ps1 die worden uitgevoerd in de sessiestatus van de aanroeper wanneer de module wordt geïmporteerd. U kunt deze scripts gebruiken om een omgeving voor te bereiden, net zoals u een aanmeldingsscript kunt gebruiken.

Als u scripts wilt opgeven die worden uitgevoerd in de sessiestatus van de module, gebruikt u de sleutel NestedModules .

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

-Tags

Hiermee geeft u een matrix van tags.

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

-TypesToProcess

Hiermee geeft u de typebestanden (.ps1xml) die worden uitgevoerd wanneer de module wordt geïmporteerd.

Wanneer u de module importeert, voert PowerShell de Update-TypeData cmdlet uit met de opgegeven bestanden. Omdat typebestanden niet binnen het bereik vallen, hebben ze invloed op alle sessiestatussen in de sessie.

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

-VariablesToExport

Hiermee geeft u de variabelen op die door de module worden geëxporteerd. Jokertekens zijn toegestaan.

U kunt deze parameter gebruiken om de variabelen te beperken die door de module worden geëxporteerd. Het kan variabelen verwijderen uit de lijst met geëxporteerde variabelen, maar er kunnen geen variabelen aan de lijst worden toegevoegd.

Als u deze parameter weglaat, New-ModuleManifest maakt u een VariablesToExport-sleutel met de waarde * (alle), wat betekent dat alle variabelen die in de module zijn gedefinieerd, door het manifest worden geëxporteerd.

Type:String[]
Position:Named
Default value:* (all)
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:True

-WhatIf

Toont wat er zou gebeuren als New-ModuleManifest er wordt uitgevoerd. De cmdlet wordt niet uitgevoerd.

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

Invoerwaarden

None

U kunt geen objecten doorsluisen naar deze cmdlet.

Uitvoerwaarden

None

Deze cmdlet retourneert standaard geen uitvoer.

String

Wanneer u de Parameter PassThru gebruikt, retourneert deze cmdlet een tekenreeks die het modulemanifest vertegenwoordigt.

Notities

New-ModuleManifest met Windows- en niet-Windows-platformen worden modulemanifestbestanden (.psd1) gemaakt die zijn gecodeerd als UTF8NoBOM.

Modulemanifesten zijn meestal optioneel. Er is echter een modulemanifest vereist voor het exporteren van een assembly die is geïnstalleerd in de globale assemblycache.

Als u bestanden in de $pshome\Modules map wilt toevoegen of wijzigen, start u PowerShell met de optie Als administrator uitvoeren .

Notitie

Vanaf PowerShell 6.2 probeert PowerShell alle DLL-bestanden te laden die worden vermeld in de eigenschap FileList van het modulemanifest. Systeemeigen DLL's worden niet geladen in de FileList en de fout wordt genegeerd. Alle beheerde DLL's worden in het proces geladen. Dit gedrag is verwijderd in PowerShell 7.1.

In PowerShell 2.0 waren veel parameters New-ModuleManifest verplicht, ook al waren ze niet vereist in een modulemanifest. Vanaf PowerShell 3.0 is alleen de padparameter verplicht.

Een sessie is een exemplaar van de PowerShell-uitvoeringsomgeving. Een sessie kan een of meer sessiestatussen hebben. Een sessie heeft standaard alleen een globale sessiestatus, maar elke geïmporteerde module heeft een eigen sessiestatus. Met sessiestatussen kunnen de opdrachten in een module worden uitgevoerd zonder dat dit van invloed is op de globale sessiestatus.

De sessiestatus van de aanroeper is de sessiestatus waarin een module wordt geïmporteerd. Normaal gesproken verwijst deze naar de globale sessiestatus, maar wanneer een module geneste modules importeert, is de aanroeper de module en is de sessiestatus van de aanroeper de sessiestatus van de module.