1

間違った地域設定を使用して 100 人以上のユーザーを作成したため、日付形式が正しくありません。すべてのユーザーとしてログインして必要な手順を実行せずに、これを修正したいと考えています。

UIまたはPowershellスクリプトを使用して、これを一度に行う方法を探しています。

理想的には、ローカル ユーザーを ForEach し、コマンドを実行して言語/地域設定を変更するスクリプトが必要です。

注: Active Directory を使用していないため、グループ ポリシーを使用できません。

4

1 に答える 1

1

ユーザーの 1 人に必要な設定を設定し、次にそれらの設定を取得します。

"HKEY_CURRENT_USER\Control Panel\International"

次に、各ユーザーのSIDを見つけます

次の各ユーザーに適用します。

"HKEY_USERS\[UserSID]\Control Panel\International"

ユーザーの SID を取得するには、この関数を使用できます。

Function GetSIDfromSAM()
{
    Param(
        [Parameter(mandatory=$true)]$userName
    )
    $myacct = Get-WmiObject Win32_UserAccount -filter "Name='$userName'" 
    return $myacct.sid
}

GetSIDfromSAM localuser
S-1-5-21-1837353773-20556466214-3321741005-1005

次に、Foreach セクションを使用します (例として)

New-PSDrive HKU Registry HKEY_USERS

Foreach ($SID in $SIDs)
{
Set-ItemProperty -Path "HKU:\$SID\Control Panel\International" -Name "LocaleName" -Value "en-us"
}

もちろん、すべてのプロパティを更新する必要があります。すべてのプロパティと値でスイッチ セクションを使用するか、他の方法を使用できます。これについてさらにヘルプが必要な場合はお知らせください。

于 2015-10-29T10:16:18.577 に答える