如何禁止更改注册表设置的提示?

时间:2018-03-16 20:02:39

标签: powershell registry taskscheduler

任务计划程序运行批处理文件,该文件启动powershell脚本以更改注册表。该任务设置为每次有人登录时运行。系统会提示用户单击是或否以更改注册表设置。当然我希望他们按“是”按钮,但不能保证他们会。有没有办法抑制注册表更改提示,并在每次询问时自动“点击”?

以下是我的.ps1文件的副本:

$regpath = "HKCU:\Software\Laserfiche\Client8\Profile\IPDatabase"
$repositoryname = "Clay"

If ((Get-ItemProperty $regpath).PSObject.Properties.Name -eq $null) {

    C:\LF_setup.reg

}ElseIf((Get-ItemProperty $regpath).PSObject.Properties.Name -ne $null){

$RepositoryBoolean = (Get-ItemProperty $regpath).PSObject.Properties.Name -contains $repositoryname

If ($RepositoryBoolean -eq "True"){

Write-Host "Laserfische Setup Correctly"
}}

1 个答案:

答案 0 :(得分:0)

如果要以静默方式导入reg文件,则必须使用regedit.exe /sreg import。无论如何,您的代码还有一些改进空间:

$regpath = 'HKCU:\Software\Laserfiche\Client8\Profile\IPDatabase'
$repositoryname = 'Clay'

$KeyContent = (Get-ItemProperty $regpath).PSObject.Properties.Name
If ($KeyContent) {
    If ($KeyContent -contains $repositoryname) {
        Write-Host 'Laserfiche Setup Correctly'
    }
}
Else{
    regedit.exe /s C:\LF_setup.reg
}

这应该是我认为的伎俩。