2017-08-31 12 views
0

Active Directory内のすべてのクライアントに2つの異なるレジストリキーをリモートで展開するスクリプトをコーディングする必要があります。スクリプトは何のエラーでも反応しませんが、キーが作成されていないように見えます。多分私を助けてくれますか? Dリモートでレジストリキーを展開する

$pc = Get-ADComputer -filter {name -like "WS226"} 
foreach ($object in $pc) 
{ 
    $object.name 

    #New Powershell-Remotesession with $PC 
    $session = New-PSSession -Computername $object.name 

    $Dir ="HKLM:\SOFTWARE\ORACLE\KEY_OraClient11g_home1" 
    If (Test-Path $Dir) 
    { 
     New-Item -Path HKLM:\SOFTWARE\ORACLE\KEY_OraClient11g_home1 -Name NewKey -Value "Default Value" -Force 
     New-ItemProperty -Path HKLM:\SOFTWARE\ORACLE\KEY_OraClient11g_home1\NewKey -Name "NLS_DATE_FORMAT" -PropertyType "String" -Value "DD.MM.RRRR" 
    } 
    else 
    { 
     ECHO "key" 
    } 

    $Dir ="HKLM:\SOFTWARE\ORACLE\KEY_OraClient11g_home1" 
    If (Test-Path $Dir) 
    { 
     New-Item -Path HKLM:\SOFTWARE\ORACLE\KEY_OraClient11g_home1 -Name NewKey2 -Value "Default Value" -Force 
     New-ItemProperty -Path  HKLM:\SOFTWARE\ORACLE\KEY_OraClient11g_home1\NewKey2 -Name " NLS_NUMERIC_CHARACTERS" -PropertyType "String" -Value ".," 
    } 
    else 
    { 
     ECHO "key" 
    } 
} 
+0

は、一つにはあなたのコードは不完全であり、あなたの行の折り返しが壊れています。あなたのコードはあなたがここに投稿したものとまったく同じように見えますか?そうでない場合:あなたの質問を編集して修正してください。 –

答えて

1

あなたがのPSSessionを作成しているが、あなたはそれを使用しないでください:

イムので、このことを念頭に置いて保管してくださいプログラミングに慣れていません。 コードをinvoke-commandに入れます。

Invoke-command -Session $Session -scriptblock{ 
    $Dir ="HKLM:\SOFTWARE\ORACLE\KEY_OraClient11g_home1" 
    If (Test-Path $Dir) 
    { 
    New-Item -Path HKLM:\SOFTWARE\ORACLE\KEY_OraClient11g_home1 -Name NewKey - 
    Value "Default Value" -Force 
    #your other code goes here 
} 
関連する問題