NAME

Set-RegMultiString

SYNOPSIS

Sets or creates an array of null-terminated strings (REG_MULTI_SZ) on local or remote computers.

SYNTAX

Set-RegMultiString [[-ComputerName] <>] [[-Hive] <>] [-Key] <> [-Value] <> [-Data] <> [-Force] [-View] [-Ping] [-PassThru] [-WhatIf] [-Confirm] [<CommonParameters>]

DESCRIPTION

 

PARAMETERS

-ComputerName <String[]>

Adds a new member even the object has a custom member with the same name. You cannot use the Force parameter to replace a standard member of a type.

Required? false
Position? 1
Default value $env:COMPUTERNAME
Accept pipeline input? true (ByValue, ByPropertyName)
Accept wildcard characters? false

 

-Hive <String>

Adds a new member even the object has a custom member with the same name. You cannot use the Force parameter to replace a standard member of a type.

Required? false
Position? 2
Default value LocalMachine
Accept pipeline input? true (ByPropertyName)
Accept wildcard characters? false

 

-Key <String>

Adds a new member even the object has a custom member with the same name. You cannot use the Force parameter to replace a standard member of a type.

Required? true
Position? 3
Default value  
Accept pipeline input? true (ByPropertyName)
Accept wildcard characters? false

 

-Value <String>

Adds a new member even the object has a custom member with the same name. You cannot use the Force parameter to replace a standard member of a type.

Required? true
Position? 4
Default value  
Accept pipeline input? true (ByPropertyName)
Accept wildcard characters? false

 

-Data <String[]>

Adds a new member even the object has a custom member with the same name. You cannot use the Force parameter to replace a standard member of a type.

Required? true
Position? 5
Default value  
Accept pipeline input? false
Accept wildcard characters? false

 

-Force <SwitchParameter>

Adds a new member even the object has a custom member with the same name. You cannot use the Force parameter to replace a standard member of a type.

Required? false
Position? named
Default value False
Accept pipeline input? false
Accept wildcard characters? false

 

-View <RegistryView>

Adds a new member even the object has a custom member with the same name. You cannot use the Force parameter to replace a standard member of a type.

Required? false
Position? named
Default value Default
Accept pipeline input? false
Accept wildcard characters? false

 

-Ping <SwitchParameter>

Adds a new member even the object has a custom member with the same name. You cannot use the Force parameter to replace a standard member of a type.

Required? false
Position? named
Default value False
Accept pipeline input? false
Accept wildcard characters? false

 

-PassThru <SwitchParameter>

Adds a new member even the object has a custom member with the same name. You cannot use the Force parameter to replace a standard member of a type.

Required? false
Position? named
Default value False
Accept pipeline input? false
Accept wildcard characters? false

 

-WhatIf <SwitchParameter>

Adds a new member even the object has a custom member with the same name. You cannot use the Force parameter to replace a standard member of a type.

Required? false
Position? named
Default value  
Accept pipeline input? false
Accept wildcard characters? false

 

-Confirm <SwitchParameter>

Adds a new member even the object has a custom member with the same name. You cannot use the Force parameter to replace a standard member of a type.

Required? false
Position? named
Default value  
Accept pipeline input? false
Accept wildcard characters? false

 

<CommonParameters>

This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer and OutVariable. For more information, type,
"get-help about_commonparameters".

INPUTS

 

OUTPUTS

PSFanatic.Registry.RegistryValue (PSCustomObject)

NOTES

Author: Shay Levy
Blog : http://PowerShay.com

EXAMPLES

-------------------------- EXAMPLE 1 --------------------------

C:\PS>$Key = "SOFTWARE\MyCompany"

Set-RegMultiString -Key $Key -Value MultiString -Data @("Power","Shell","Rocks!")

Description
-----------
The command sets or creates a multiple string registry value MultiString on the local computer MyCompany key.
The name of ComputerName parameter, which is optional, is omitted.

-------------------------- EXAMPLE 2 --------------------------

C:\PS>[Environment]::Is64BitProcess

False

PS> Set-RegMultiString -Key SOFTWARE\MyKey -ComputerName Server1 -View Registry64 -Value 64MultiString -Data @('value1','value2') -Force -PassThru

ComputerName Hive Key Value Data Type
------------ ---- --- ----- ---- ----
Server1 LocalMachine SOFTWARE\MyKey 64MultiString {value1, value2} MultiString


Description
-----------
This command is using an elevated 32-bit instance of Windows PowerShell to set values on
a 64-bit registry section of a remote 64-bit server. First we verify that the current console
is a 32-bit instance by using the Is64BitProcess system environment variable.

Connecting to the 64-bit section of the remote server registry is done using the View
parameter.

-------------------------- EXAMPLE 3 --------------------------

C:\PS>"SERVER1","SERVER1","SERVER3" | Set-RegMultiString -Key $Key -Value MultiString -Data @("Power","Shell","Rocks!") -Ping

Description
-----------
The command sets or creates a multiple string registry value MultiString on three remote computers.
When the Switch parameter Ping is specified the command issues a ping test to each computer.
If the computer is not responding to the ping request a warning message is written to the console and the computer is not processed.

-------------------------- EXAMPLE 4 --------------------------

C:\PS>Get-Content servers.txt | Set-RegMultiString -Key $Key -Value MultiString -Data -Force -PassThru

ComputerName Hive Key Value Data Type
------------ ---- --- ----- ---- ----
SERVER1 LocalMachine SOFTWARE\MyCompany MultiString {Power, Shell, Rocks!} MultiString
SERVER2 LocalMachine SOFTWARE\MyCompany MultiString {Power, Shell, Rocks!} MultiString
SERVER3 LocalMachine SOFTWARE\MyCompany MultiString {Power, Shell, Rocks!} MultiString

Description
-----------
The command uses the Get-Content cmdlet to get the server names from a text file.
It Sets or Creates a registry MultiString value named MultiString on three remote computers.
By default, the caller is prompted to confirm each action. To override confirmations, the Force Switch parameter is specified.
By default, the command doesn't return any objects back. To get the values objects, specify the PassThru Switch parameter.

RELATED LINKS

http://psrr.codeplex.com
Get-RegMultiString
Get-RegValue
Remove-RegValue
Test-RegValue

Last edited Jun 11, 2012 at 12:41 PM by Shay, version 3

Comments

No comments yet.