NAME

Test-RegKey

SYNOPSIS

Determines if a registry key exists.

SYNTAX

Test-RegKey [[-ComputerName] <>] [[-Hive] <>] [-Key] <> [-Ping] [-View] [-PassThru] [<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

 

-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

 

-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

 

-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

 

<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

System.Boolean PSFanatic.Registry.RegistryValue (PSCustomObject)

NOTES

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

EXAMPLES

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

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

Test-RegKey -ComputerName SERVER1 -Key $Key

True


Description
-----------
The command checks if the MyCompany key exists on SERVER1.
If the Value was found the result is True, else False.

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

C:\PS>[Environment]::Is64BitProcess

False

PS> Test-RegKey -Key SOFTWARE\MyKey -ComputerName Server1 -View Registry64

True


Description
-----------
This command is using an elevated 32-bit instance of Windows PowerShell to test if a
registry key exists 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>Get-Content servers.txt | Test-RegValue -Key $Key -PassThru

ComputerName Hive Key Value Data Type
------------ ---- --- ----- ---- ----
SERVER1 LocalMachine SOFTWARE\Microsof... PowerShellVersion 1.0 String
SERVER2 LocalMachine SOFTWARE\Microsof... PowerShellVersion 1.0 String
SERVER3 LocalMachine SOFTWARE\Microsof... PowerShellVersion 1.0 String

Description
-----------
The command uses the Get-Content cmdlet to get the server names from a text file. The computer names are piped into
Test-RegValue. If the Value was found and PassThru is specidied, the result is the registry value custom object.

RELATED LINKS

http://psrr.codeplex.com
Get-RegKey
New-RegKey
Remove-RegKey

Last edited Jun 11, 2012 at 1:40 PM by Shay, version 2

Comments

No comments yet.