Partager via


Update-TypeData

Met à jour les données de type étendu dans la session.

Syntaxe

Update-TypeData
      [[-AppendPath] <String[]>]
      [-PrependPath <String[]>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Update-TypeData
      [-MemberType <PSMemberTypes>]
      [-MemberName <String>]
      [-Value <Object>]
      [-SecondValue <Object>]
      [-TypeConverter <Type>]
      [-TypeAdapter <Type>]
      [-SerializationMethod <String>]
      [-TargetTypeForDeserialization <Type>]
      [-SerializationDepth <Int32>]
      [-DefaultDisplayProperty <String>]
      [-InheritPropertySerializationSet <Nullable`1>]
      [-StringSerializationSource <String>]
      [-DefaultDisplayPropertySet <String[]>]
      [-DefaultKeyPropertySet <String[]>]
      [-PropertySerializationSet <String[]>]
      -TypeName <String>
      [-Force]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Update-TypeData
      [-Force]
      [-TypeData] <TypeData[]>
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]

Description

L’applet Update-TypeData de commande met à jour les données de type étendues dans la session en rechargeant les Types.ps1xml fichiers en mémoire et en ajoutant de nouvelles données de type étendu.

Par défaut, PowerShell charge les données de type étendues en fonction des besoins. Sans paramètres, Update-TypeData recharge tous les Types.ps1xml fichiers qu’il a chargés dans la session, y compris les fichiers de type que vous avez ajoutés. Vous pouvez utiliser les paramètres de l’ajout de Update-TypeData nouveaux fichiers de type et ajouter et remplacer des données de type étendues.

L’applet Update-TypeData de commande peut être utilisée pour précharger toutes les données de type. Cette fonctionnalité est particulièrement utile quand vous développez des types et que vous souhaitez charger ces nouveaux types à des fins de test.

À compter de Windows PowerShell 3.0, vous pouvez l’utiliser Update-TypeData pour ajouter et remplacer des données de type étendu dans la session sans utiliser de Types.ps1xml fichier. Les données de type ajoutées de manière dynamique, c'est-à-dire sans fichier, sont ajoutées uniquement à la session active. Pour ajouter les données de type à toutes les sessions, ajoutez une Update-TypeData commande à votre profil PowerShell. Pour plus d’informations, consultez about_Profiles.

En outre, à partir de Windows PowerShell 3.0, vous pouvez utiliser l’applet Get-TypeData de commande pour obtenir les types étendus dans la session active et l’applet Remove-TypeData de commande pour supprimer les types étendus de la session active.

Les exceptions qui se produisent dans les propriétés ou à partir de l’ajout de propriétés à une Update-TypeData commande ne signalent pas d’erreurs. Cela permet de supprimer des exceptions qui se produisent dans de nombreux types courants durant la mise en forme et la sortie. Si vous obtenez des propriétés .NET, vous pouvez contourner la suppression des exceptions à l’aide de la syntaxe de méthode à la place, comme illustré dans l’exemple suivant :

"hello".get_Length()

Notez que la syntaxe de méthode ne peut être utilisée qu’avec les propriétés .NET. Les propriétés ajoutées en exécutant l’applet de commande ne peuvent pas utiliser la Update-TypeData syntaxe de méthode.

Pour plus d’informations sur les Types.ps1xml fichiers dans PowerShell, consultez about_Types.ps1xml.

Exemples

Exemple 1 : Mettre à jour les types étendus

Update-TypeData

Cette commande met à jour la configuration de type étendu à partir des Types.ps1xml fichiers qui ont déjà été utilisés dans la session.

Exemple 2 : Mettre à jour plusieurs fois les types

Cet exemple montre comment mettre à jour les types dans un fichier de type plusieurs fois dans la même session.

La première commande met à jour la configuration de type étendu à partir des Types.ps1xml fichiers, en traitant d’abord les fichiers et TypesB.types.ps1xml les TypesA.types.ps1xml fichiers.

La deuxième commande montre comment mettre à jour la TypesA.types.ps1xml nouvelle fois, par exemple si vous avez ajouté ou modifié un type dans le fichier. Vous pouvez répéter la commande précédente pour le TypesA.types.ps1xml fichier ou exécuter une Update-TypeData commande sans paramètres, car TypesA.types.ps1xml elle figure déjà dans la liste de fichiers de type de la session active.

Update-TypeData -PrependPath TypesA.types.ps1xml, TypesB.types.ps1xml
Update-TypeData -PrependPath TypesA.types.ps1xml

Exemple 3 : Ajouter une propriété de script à des objets DateTime

Cet exemple utilise Update-TypeData pour ajouter la propriété de script Quarter aux objets System.DateTime dans la session active, telles que celles retournées par l’applet Get-Date de commande.

$typeDataParams = @{
    TypeName   = 'System.DateTime'
    MemberType = 'ScriptProperty'
    MemberName = 'Quarter'
    Value      = {
        switch ($this.Month) {
            { $_ -in @(1, 2, 3) } { return 'Q1' }
            { $_ -in @(4, 5, 6) } { return 'Q2' }
            { $_ -in @(7, 8, 9) } { return 'Q3' }
            default               { return 'Q4' }
        }
    }
}
Update-TypeData @typeDataParams

(Get-Date).Quarter

Q1

La Update-TypeData commande utilise le paramètre TypeName pour spécifier le type System.DateTime , le paramètre MemberName pour spécifier un nom pour la nouvelle propriété, la propriété MemberType pour spécifier le type ScriptProperty et le paramètre Value pour spécifier le script qui détermine le trimestre annuel.

La valeur de la propriété Value est un script qui calcule le trimestre annuel actuel. Le bloc de script utilise la $this variable automatique pour représenter l’instance actuelle de l’objet et l’opérateur In pour déterminer si la valeur du mois apparaît dans chaque tableau entier. Pour plus d’informations sur l’opérateur -in , consultez about_Comparison_Operators.

La deuxième commande obtient la nouvelle propriété Quarter de la date actuelle.

Exemple 4 : Mettre à jour un type qui s’affiche dans des listes par défaut

Cet exemple montre comment définir les propriétés d’un type qui s’affiche dans les listes par défaut, c’est-à-dire quand aucune propriété n’est spécifiée. Étant donné que les données de type ne sont pas spécifiées dans un Types.ps1xml fichier, elles sont effectives uniquement dans la session active.

Get-Date | Format-list

Update-TypeData -TypeName "System.DateTime" -DefaultDisplayPropertySet @(
    'DateTime'
    'DayOfYear'
    'Quarter'
)

Get-Date | Format-List

DisplayHint : DateTime
Date        : 8/7/2024 12:00:00 AM
Day         : 7
DayOfWeek   : Wednesday
DayOfYear   : 220
Hour        : 10
Kind        : Local
Millisecond : 568
Minute      : 34
Month       : 8
Second      : 43
Ticks       : 638586236835683086
TimeOfDay   : 10:34:43.5683086
Year        : 2024
DateTime    : Wednesday, August 7, 2024 10:34:43 AM
Quarter     : Q3


DateTime  : Wednesday, August 7, 2024 10:34:43 AM
DayOfYear : 220
Quarter   : Q3

La première commande affiche l’affichage liste de la Get-Date commande, qui génère un objet System.DateTime qui représente la date actuelle. La commande utilise un opérateur de pipeline (|) pour envoyer l’objet DateTime à l’applet Format-List de commande. Étant donné que la Format-List commande ne spécifie pas les propriétés à afficher dans la liste, PowerShell affiche chaque propriété publique non masquée pour l’objet.

La deuxième commande utilise l’applet Update-TypeData de commande pour définir les propriétés de liste par défaut pour le type System.DateTime . La commande utilise le paramètre TypeName pour spécifier le type et le paramètre DefaultDisplayPropertySet pour spécifier les propriétés par défaut d’une liste. Les propriétés sélectionnées incluent la nouvelle propriété de script Quarter qui a été ajoutée dans un exemple précédent.

La dernière commande obtient la date actuelle et l’affiche à nouveau dans un format de liste. Elle affiche uniquement les propriétés définies dans la Update-TypeData commande, au lieu de la liste complète des propriétés.

Exemple 5 : Définir la propriété qu’un type affiche au format large

Cet exemple montre comment créer une propriété de script et l’utiliser comme propriété par défaut affichée lorsque le type est passé à l’applet Format-Wide de commande.

Get-Command *File* | Format-Wide

Set-AppPackageProvisionedDataFile                          Set-ProvisionedAppPackageDataFile
Set-ProvisionedAppXDataFile                                Write-FileSystemCache
Write-FileSystemCache                                      Block-FileShareAccess
Clear-FileStorageTier                                      Close-SmbOpenFile
Debug-FileShare                                            Disable-NetIPHttpsProfile
Enable-NetIPHttpsProfile                                   Get-FileHash
Get-FileIntegrity                                          Get-FileShare
Get-FileShareAccessControlEntry                            Get-FileStorageTier
Get-NetConnectionProfile                                   Get-NetFirewallHyperVProfile
Get-NetFirewallProfile                                     Get-SmbOpenFile
Get-StorageFileServer                                      Get-SupportedFileSystems
Grant-FileShareAccess                                      Import-PowerShellDataFile
New-FileShare                                              New-NetFirewallHyperVProfile
New-ScriptFileInfo                                         New-StorageFileServer
New-TemporaryFile                                          Publish-BCFileContent
Remove-FileShare                                           Remove-NetFirewallHyperVProfile
Remove-StorageFileServer                                   Repair-FileIntegrity
Revoke-FileShareAccess                                     Set-FileIntegrity
Set-FileShare                                              Set-FileStorageTier
Set-NetConnectionProfile                                   Set-NetFirewallHyperVProfile
Set-NetFirewallProfile                                     Set-StorageBusProfile
Set-StorageFileServer                                      Test-ScriptFileInfo
Unblock-FileShareAccess                                    Update-ScriptFileInfo
Add-BitsFile                                               Get-AIPFileStatus
Get-AppLockerFileInformation                               New-FileCatalog
New-PSRoleCapabilityFile                                   New-PSSessionConfigurationFile
Out-File                                                   Set-AIPFileClassification
Set-AIPFileLabel                                           Set-AppXProvisionedDataFile
Set-UevTemplateProfile                                     Test-FileCatalog
Test-PSSessionConfigurationFile                            Unblock-File
FileDialogBroker.exe                                       FileHistory.exe
forfiles.exe                                               openfiles.exe

$typeDataParams = @{
    TypeName               = 'System.Management.Automation.CommandInfo'
    DefaultDisplayProperty = 'FullyQualifiedName'
    MemberType             = 'ScriptProperty'
    MemberName             = 'FullyQualifiedName'
    Value                  = {
        [OutputType([string])]
        param()

        # For executables, return the path to the application.
        if ($this -is [System.Management.Automation.ApplicationInfo]) {
            return $this.Path
        }

        # For commands defined outside a module, return only the name.
        if ([string]::IsNullOrEmpty($this.ModuleName)) {
            return $this.Name
        }

        # Return the fully-qualified command name "<ModuleName>\<CommandName>"
        return '{0}\{1}' -f $this.ModuleName, $this.Name
    }
}
Update-TypeData @typeDataParams

Get-Command *File* | Format-Wide

Dism\Set-AppPackageProvisionedDataFile                     Dism\Set-ProvisionedAppPackageDataFile
Dism\Set-ProvisionedAppXDataFile                           Storage\Write-FileSystemCache
VMDirectStorage\Write-FileSystemCache                      Storage\Block-FileShareAccess
Storage\Clear-FileStorageTier                              SmbShare\Close-SmbOpenFile
Storage\Debug-FileShare                                    NetworkTransition\Disable-NetIPHttpsProfile
NetworkTransition\Enable-NetIPHttpsProfile                 Microsoft.PowerShell.Utility\Get-FileHash
Storage\Get-FileIntegrity                                  Storage\Get-FileShare
Storage\Get-FileShareAccessControlEntry                    Storage\Get-FileStorageTier
NetConnection\Get-NetConnectionProfile                     NetSecurity\Get-NetFirewallHyperVProfile
NetSecurity\Get-NetFirewallProfile                         SmbShare\Get-SmbOpenFile
Storage\Get-StorageFileServer                              Storage\Get-SupportedFileSystems
Storage\Grant-FileShareAccess                              Microsoft.PowerShell.Utility\Import-PowerShellDataFile
Storage\New-FileShare                                      NetSecurity\New-NetFirewallHyperVProfile
PowerShellGet\New-ScriptFileInfo                           Storage\New-StorageFileServer
Microsoft.PowerShell.Utility\New-TemporaryFile             BranchCache\Publish-BCFileContent
Storage\Remove-FileShare                                   NetSecurity\Remove-NetFirewallHyperVProfile
Storage\Remove-StorageFileServer                           Storage\Repair-FileIntegrity
Storage\Revoke-FileShareAccess                             Storage\Set-FileIntegrity
Storage\Set-FileShare                                      Storage\Set-FileStorageTier
NetConnection\Set-NetConnectionProfile                     NetSecurity\Set-NetFirewallHyperVProfile
NetSecurity\Set-NetFirewallProfile                         StorageBusCache\Set-StorageBusProfile
Storage\Set-StorageFileServer                              PowerShellGet\Test-ScriptFileInfo
Storage\Unblock-FileShareAccess                            PowerShellGet\Update-ScriptFileInfo
BitsTransfer\Add-BitsFile                                  AzureInformationProtection\Get-AIPFileStatus
AppLocker\Get-AppLockerFileInformation                     Microsoft.PowerShell.Security\New-FileCatalog
Microsoft.PowerShell.Core\New-PSRoleCapabilityFile         Microsoft.PowerShell.Core\New-PSSessionConfigurationFile
Microsoft.PowerShell.Utility\Out-File                      AzureInformationProtection\Set-AIPFileClassification
AzureInformationProtection\Set-AIPFileLabel                Dism\Set-AppXProvisionedDataFile
UEV\Set-UevTemplateProfile                                 Microsoft.PowerShell.Security\Test-FileCatalog
Microsoft.PowerShell.Core\Test-PSSessionConfigurationFile  Microsoft.PowerShell.Utility\Unblock-File
C:\WINDOWS\system32\FileDialogBroker.exe                   C:\WINDOWS\system32\FileHistory.exe
C:\WINDOWS\system32\forfiles.exe                           C:\WINDOWS\system32\openfiles.exe

La première commande utilise l’applet Get-Command de commande pour renvoyer chaque commande avec un nom contenant le mot File. Il canalise la sortie vers l’applet Format-Wide de commande, qui affiche les noms des commandes dans les colonnes.

Ensuite, l’exemple utilise Update-TypeData pour définir à la fois defaultDisplayProperty et une nouvelle propriété de script pour le type CommandInfo. Sortie pour Get-Command renvoyer des objets CommandInfo et des objets dérivés de ce type. La nouvelle propriété de script, FullyQualifiedName, retourne le chemin d’accès complet aux applications exécutables et le nom complet des applets de commande, qui préfixe le nom de l’applet de commande avec le module qui le définit. L’applet Update-TypeData de commande peut définir la nouvelle propriété de script et l’utiliser comme DefaultDisplayProperty dans la même commande.

Enfin, la sortie affiche les résultats de l’affichage Get-Command au format large après la mise à jour de type. Il affiche le nom complet des applets de commande et le chemin d’accès complet aux applications exécutables.

Exemple 6 : Mettre à jour les données de type pour un objet redirigé

$typeDataParams = @{
    MemberType = 'ScriptProperty'
    MemberName = 'SupportsUpdatableHelp'
    Value      = {
        [OutputType([bool])]
        param()

        return (-not [string]::IsNullOrEmpty($this.HelpInfoUri))
    }
}
Get-Module Microsoft.PowerShell.Utility | Update-TypeData @typeDataParams

Get-Module -ListAvailable -Name Microsoft.PowerShell.* |
    Format-Table Name, SupportsUpdatableHelp

Name                                      SupportsUpdatableHelp
----                                      ---------------------
Microsoft.PowerShell.Operation.Validation                  True
Microsoft.PowerShell.Archive                               True
Microsoft.PowerShell.Diagnostics                           True
Microsoft.PowerShell.Host                                  True
Microsoft.PowerShell.LocalAccounts                         True
Microsoft.PowerShell.Management                            True
Microsoft.PowerShell.ODataUtils                            True
Microsoft.PowerShell.Security                              True
Microsoft.PowerShell.Utility                               True

Cet exemple montre que lorsque vous dirigez un objet vers Update-TypeData, Update-TypeData ajoute des données de type étendu pour le type d’objet.

Cette technique est plus rapide que l’utilisation de l’applet Get-Member de commande ou de la Get-Type méthode pour obtenir le type d’objet. Toutefois, si vous dirigez une collection d’objets vers Update-TypeData, il met à jour les données de type du premier type d’objet, puis retourne une erreur pour tous les autres objets de la collection, car le membre est déjà défini sur le type.

La première commande utilise l’applet Get-Module de commande pour obtenir le module Microsoft.PowerShell.Utility . La commande canalise l’objet module vers l’applet Update-TypeData de commande, qui met à jour les données de type pour le type System.Management.Automation.PSModuleInfo et les types dérivés de celui-ci, tels que le type ModuleInfoGrouping qui Get-Module retourne lorsque vous utilisez le paramètre ListAvailable dans la commande.

Les Update-TypeData commandes ajoutent la propriété de script SupportsUpdatableHelp à tous les modules importés. La valeur du paramètre Value est un script qui retourne $true si la propriété HelpInfoUri du module est remplie et $false sinon.

La deuxième commande canalise les objets de module de Get-Module l’applet Format-Table de commande, qui affiche les propriétés Name et SupportsUpdatableHelp des modules disponibles.

Paramètres

-AppendPath

Spécifie le chemin d’accès aux fichiers facultatifs .ps1xml . Les fichiers spécifiés sont chargés dans l'ordre dans lequel ils sont répertoriés après le chargement des fichiers intégrés. Vous pouvez également diriger une valeur AppendPath vers Update-TypeData.

Type:String[]
Alias:PSPath, Path
Position:0
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:True
Accepter les caractères génériques:False

-Confirm

Vous demande une confirmation avant d’exécuter la commande cmdlet.

Type:SwitchParameter
Alias:cf
Position:Named
Valeur par défaut:False
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-DefaultDisplayProperty

Spécifie la propriété du type affiché par l’applet Format-Wide de commande lorsqu’aucune autre propriété n’est spécifiée.

Tapez le nom d'une propriété standard ou étendue du type. La valeur de ce paramètre peut correspondre au nom d'un type ajouté dans la même commande.

Cette valeur n’est effective qu’en l’absence de vues larges définies pour le type d’un Format.ps1xml fichier.

Ce paramètre a été introduit dans Windows PowerShell 3.0.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-DefaultDisplayPropertySet

Spécifie une ou plusieurs propriétés du type. Ces propriétés sont affichées par les Format-Listapplets de commande , Format-Tableet Format-Custom les applets de commande lorsqu’aucune autre propriété n’est spécifiée.

Tapez les noms des propriétés standard ou étendues du type. La valeur de ce paramètre peut correspondre aux noms des types ajoutés dans la même commande.

Cette valeur n’est effective qu’en l’absence de liste, de table ou de vues personnalisées, respectivement définies pour le type d’un Format.ps1xml fichier.

Ce paramètre a été introduit dans Windows PowerShell 3.0.

Type:String[]
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-DefaultKeyPropertySet

Spécifie une ou plusieurs propriétés du type. Ces propriétés sont utilisées par les Group-Object applets de commande et Sort-Object quand aucune autre propriété n’est spécifiée.

Tapez les noms des propriétés standard ou étendues du type. La valeur de ce paramètre peut correspondre aux noms des types ajoutés dans la même commande.

Ce paramètre a été introduit dans Windows PowerShell 3.0.

Type:String[]
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-Force

Indique que l’applet de commande utilise les données de type spécifiées, même si les données de type ont déjà été spécifiées pour ce type.

Ce paramètre a été introduit dans Windows PowerShell 3.0.

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-InheritPropertySerializationSet

Indique si l’ensemble de propriétés sérialisées est hérité. La valeur par défaut est $Null. Les valeurs valides pour ce paramètre sont :

  • $True. Le jeu de propriétés est hérité.
  • $False. Le jeu de propriétés n'est pas hérité.
  • $Null. L'héritage n'est pas défini.

Ce paramètre est valide uniquement lorsque la valeur du paramètre SerializationMethod est SpecificProperties. Lorsque la valeur de ce paramètre est $False, le paramètre PropertySerializationSet est requis.

Ce paramètre a été introduit dans Windows PowerShell 3.0.

Type:Nullable<T>[Boolean]
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-MemberName

Spécifie le nom d'une propriété ou d'une méthode.

Utilisez ce paramètre avec les paramètres TypeName, MemberType, Value et SecondValue pour ajouter ou modifier une propriété ou une méthode d’un type.

Ce paramètre a été introduit dans Windows PowerShell 3.0.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-MemberType

Spécifie le type du membre à ajouter ou changer.

Utilisez ce paramètre avec les paramètres TypeName, MemberType, Value et SecondValue pour ajouter ou modifier une propriété ou une méthode d’un type. Les valeurs valides pour ce paramètre sont :

  • AliasProperty
  • CodeMethod
  • CodeProperty
  • Remarqueproperty
  • ScriptMethod
  • ScriptProperty

Pour plus d’informations sur ces valeurs, consultez énumération PSMemberTypes.

Ce paramètre a été introduit dans Windows PowerShell 3.0.

Type:PSMemberTypes
Valeurs acceptées:NoteProperty, AliasProperty, ScriptProperty, CodeProperty, ScriptMethod, CodeMethod
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-PrependPath

Spécifie le chemin d’accès aux fichiers facultatifs .ps1xml . Les fichiers spécifiés sont chargés dans l'ordre dans lequel ils sont répertoriés avant le chargement des fichiers intégrés.

Type:String[]
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-PropertySerializationSet

Spécifie les noms des propriétés qui sont sérialisées. Utilisez ce paramètre lorsque la valeur du paramètre SerializationMethod est SpecificProperties.

Type:String[]
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-SecondValue

Spécifie des valeurs supplémentaires pour les membres AliasProperty, ScriptProperty, CodeProperty ou CodeMethod .

Utilisez ce paramètre avec les paramètres TypeName, MemberType, Value et SecondValue pour ajouter ou modifier une propriété ou une méthode d’un type.

Lorsque la valeur du paramètre MemberType est AliasProperty, la valeur du paramètre SecondValue doit être un type de données. PowerShell convertit (autrement dit, caste) la valeur de la propriété alias en type spécifié. Par exemple, si vous ajoutez une propriété d’alias qui fournit un autre nom pour une propriété de chaîne, vous pouvez également spécifier une SecondValue de System.Int32 pour convertir la valeur de chaîne alias en entier.

Lorsque la valeur du paramètre MemberType est ScriptProperty, vous pouvez utiliser le paramètre SecondValue pour spécifier un bloc de script supplémentaire. Le bloc de script dans la valeur du paramètre Value obtient la valeur d’une variable. Le bloc de script dans la valeur du paramètre SecondValue définit la valeur de la variable.

Ce paramètre a été introduit dans Windows PowerShell 3.0.

Type:Object
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-SerializationDepth

Spécifie le nombre de niveaux d'objets de type sérialisés en tant que chaînes. La valeur 1 par défaut sérialise l’objet et ses propriétés. Une valeur de 0 sérialise l’objet, mais pas ses propriétés. Une valeur de 2 sérialise l’objet, ses propriétés et tous les objets dans les valeurs de propriété.

Ce paramètre a été introduit dans Windows PowerShell 3.0.

Type:Int32
Position:Named
Valeur par défaut:1
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-SerializationMethod

Spécifie une méthode de sérialisation pour le type. Une méthode de sérialisation détermine quelles sont les propriétés du type qui sont sérialisées, ainsi que la technique de sérialisation utilisée. Les valeurs valides pour ce paramètre sont :

  • AllPublicProperties. sérialisez toutes les propriétés publiques du type. Vous pouvez utiliser le paramètre SerializationDepth pour déterminer si les propriétés enfants sont sérialisées.
  • String. sérialisez le type en tant que chaîne. Vous pouvez utiliser StringSerializationSource pour spécifier une propriété du type à utiliser comme résultat de sérialisation. Sinon, le type est sérialisé à l’aide de la méthode ToString de l’objet.
  • SpecificProperties. Sérialisez uniquement les propriétés spécifiées de ce type. Utilisez le paramètre PropertySerializationSet pour spécifier les propriétés du type sérialisé. Vous pouvez également utiliser le paramètre InheritPropertySerializationSet pour déterminer si le jeu de propriétés est hérité et le paramètre SerializationDepth pour déterminer si les propriétés enfants sont sérialisées.

Dans PowerShell, les méthodes de sérialisation sont stockées dans des objets internes PSStandardMembers .

Ce paramètre a été introduit dans Windows PowerShell 3.0.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-StringSerializationSource

Spécifie le nom d'une propriété du type. La valeur de la propriété spécifiée est utilisée comme résultat de la sérialisation. Ce paramètre est valide uniquement lorsque la valeur du paramètre SerializationMethod est String.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-TargetTypeForDeserialization

Spécifie le type vers lequel les objets de ce type sont convertis quand ils sont désérialisés.

Ce paramètre a été introduit dans Windows PowerShell 3.0.

Type:Type
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-TypeAdapter

Spécifie le type d’un adaptateur de type, tel que Microsoft.PowerShell.Cim.CimInstanceAdapter. Un adaptateur de type permet à PowerShell d’obtenir les membres d’un type.

Ce paramètre a été introduit dans Windows PowerShell 3.0.

Type:Type
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-TypeConverter

Spécifie un convertisseur de type pour convertir des valeurs entre différents types. Si un convertisseur de type est défini pour un type, une instance du convertisseur de type est utilisée pour la conversion.

Entrez une valeur System.Type dérivée des classes System.ComponentModel.TypeConverter ou System.Management.Automation.PSTypeConverter .

Ce paramètre a été introduit dans Windows PowerShell 3.0.

Type:Type
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-TypeData

Spécifie un tableau de données de type que cette applet de commande ajoute à la session. Entrez une variable qui contient un objet TypeData ou une commande qui obtient un objet TypeData , tel qu’une Get-TypeData commande. Vous pouvez également diriger un objet TypeData vers Update-TypeData.

Ce paramètre a été introduit dans Windows PowerShell 3.0.

Type:TypeData[]
Position:0
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:True
Accepter les caractères génériques:False

-TypeName

Spécifie le nom du type à étendre.

Pour les types dans l’espace de noms Système , entrez le nom court. Sinon, le nom de type complet est obligatoire. Les caractères génériques ne sont pas pris en charge.

Vous pouvez diriger les noms de types vers Update-TypeData. Lorsque vous dirigez un objet vers Update-TypeData, Update-TypeData obtient le nom de type de l’objet et les données de type vers le type d’objet.

Utilisez ce paramètre avec les paramètres MemberName, MemberType, Value et SecondValue pour ajouter ou modifier une propriété ou une méthode d’un type.

Ce paramètre a été introduit dans Windows PowerShell 3.0.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:True
Accepter les caractères génériques:False

-Value

Spécifie la valeur de la propriété ou de la méthode.

Si vous ajoutez un AliasProperty, ou ScriptPropertyCodePropertyCodeMethod un membre, vous pouvez utiliser le paramètre SecondValue pour ajouter des informations supplémentaires.

Utilisez ce paramètre avec les paramètres MemberName, MemberType, Value et SecondValue pour ajouter ou modifier une propriété ou une méthode d’un type.

Ce paramètre a été introduit dans Windows PowerShell 3.0.

Type:Object
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-WhatIf

Montre ce qui se passe en cas d’exécution de l’applet de commande. L’applet de commande n’est pas exécutée.

Type:SwitchParameter
Alias:wi
Position:Named
Valeur par défaut:False
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

Entrées

String

Vous pouvez diriger une chaîne qui contient les valeurs des paramètres AppendPath, TypeName ou TypeData vers cette applet de commande.

Sorties

None

Cette applet de commande ne retourne pas de sortie.