如何为特定服务器上没有配置文件的少数用户编写 HKCU 设置脚本?

如何为特定服务器上没有配置文件的少数用户编写 HKCU 设置脚本?

以下是我要手动执行的操作:

  1. 使用 Account1 登录到服务器以创建其 Wi​​ndows 配置文件。
  2. 启动 Internet Explorer。单击“工具”>“Internet 选项”>“高级”> 取消选中“检查发布者的证书是否吊销”,然后单击“确定”。这将更新“HKCU:\Software\Microsoft\Windows\CurrentVersion\WinTrust\Trust Providers\Software Publishing\State”。

我想以某种方式自动执行上述过程,以便我不必登录服务器,但仍将设置应用于所有用户。(使用 GPO 可以工作,但不是一种选择。)

  • 有没有办法模拟用户登录并设置他们的 HKCU 值?
  • 有没有办法至少可以自动将某人登录到服务器并设置值?

答案1

您将需要使用 reg load 来编辑默认的 ntuser.dat,然后将其传播到所有新创建的配置文件。

例子:

@echo off
SET Counter=0
SET LogFile=%windir%\temp\Reg.log
echo. > %LogFile%

:LoadRegHive
SET /A Counter += 1
sleep 5
REG LOAD HKU\ChangeMe "c:\Documents and Settings\Default User\NTUSER.DAT"
IF /I %Counter% GEQ 10 GOTO RegLoadError
IF ERRORLEVEL 0 IF NOT ERRORLEVEL 1 (SET Counter=0 && GOTO ChangeKeys) ELSE (GOTO LoadRegHive)

:ChangeKeys
REG ADD "HKEY_USERS\ChangeMe\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" /v "My Pictures" /t REG_EXPAND_SZ /d "%%SystemDrive%%\My Documents\My Pictures" /f
IF ERRORLEVEL 0 IF NOT ERRORLEVEL 1 (echo "Successfully changed My Pictures network reference" >> %LogFile%) ELSE (echo "Error changing My Pictures network reference" >> %LogFile%)

REG ADD "HKEY_USERS\ChangeMe\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" /v "My Music" /t REG_EXPAND_SZ /d "%%SystemDrive%%\My Documents\My Music" /f
IF ERRORLEVEL 0 IF NOT ERRORLEVEL 1 (echo "Successfully changed My Music network reference" >> %LogFile%) ELSE (echo "Error changing My Music network reference" >> %LogFile%)

REG ADD "HKEY_USERS\ChangeMe\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" /v "Personal" /t REG_EXPAND_SZ /d "%%SystemDrive%%\My Documents" /f
IF ERRORLEVEL 0 IF NOT ERRORLEVEL 1 (echo "Successfully changed Personal network reference" >> %LogFile%) ELSE (echo "Error changing My Music network reference" >> %LogFile%)

REG UNLOAD HKU\ChangeMe

GOTO End

:RegLoadError
echo "Error loading the registry hive after 10 tries." >> %LogFile%
GOTO END

:End
EXIT

答案2

听起来,在本地 GPO 中的服务器上应用登录脚本来执行所需的更改相当简单。当用户登录时,更改就会发生。

如果终端服务器计算机是域成员,我会使用环回策略处理来分配登录脚本。

在脚本中,我只需在应用设置之前检查用户是否是“少数”用户之一。

相关内容