windows 批处理注册表修改

昨天一个同事抱怨我维护的一个产品修改设置比较麻烦,能不能写个批处理脚本去执行。我自己想想好像也是那么一回事,之前还让客户去修改注册表什么的。我当初连注册表怎么进入都不知道,也是各种度娘。于是开始写一个批处理。

先看看批处理注册表语法 :reg /?可以查看

主要命令有如下几条:

REG Operation [Parameter List]

  Operation  [ QUERY   | ADD    | DELETE  | COPY    |
               SAVE    | LOAD   | UNLOAD  | RESTORE |
               COMPARE | EXPORT | IMPORT  | FLAGS ]

返回代码: (除了 REG COMPARE)

  0 - 成功
  1 - 失败

要得到有关某个操作的帮助,请键入:

  REG Operation /?

例如:

  REG QUERY /?
  REG ADD /?
  REG DELETE /?
  REG COPY /?
  REG SAVE /?
  REG RESTORE /?
  REG LOAD /?
  REG UNLOAD /?
  REG COMPARE /?
  REG EXPORT /?
  REG IMPORT /?
  REG FLAGS /?

每一个对应的不同的方法:

我们来看看等下要用到的reg add命令

REG ADD KeyName [/v ValueName | /ve] [/t Type] [/s Separator] [/d Data] [/f]
        [/reg:32 | /reg:64]

  KeyName  [\\Machine\]FullKey
           Machine  远程机器名 - 忽略默认到当前机器。远程机器上
                    只有 HKLM 和 HKU 可用。
           FullKey  ROOTKEY\SubKey
           ROOTKEY  [ HKLM | HKCU | HKCR | HKU | HKCC ]
           SubKey   所选 ROOTKEY 下注册表项的完整名称。

  /v       所选项之下要添加的值名称。

  /ve      为注册表项添加空白值名称(默认)。

  /t       RegKey 数据类型
           [ REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ |
             REG_DWORD | REG_QWORD    | REG_BINARY    | REG_NONE ]
           如果忽略,则采用 REG_SZ。

  /s       指定一个在 REG_MULTI_SZ 数据字符串中用作分隔符的字符
           如果忽略,则将 "\0" 用作分隔符。

  /d       要分配给添加的注册表 ValueName 的数据。

  /f       不用提示就强行覆盖现有注册表项。

 /reg:32  指定应该使用 32 位注册表视图访问的注册表项。

 /reg:64  指定应该使用 64 位注册表视图访问的注册表项。

例如:

  REG ADD \\ABC\HKLM\Software\MyCo
    添加远程机器 ABC 上的一个注册表项 HKLM\Software\MyCo

  REG ADD HKLM\Software\MyCo /v Data /t REG_BINARY /d fe340ead
    添加一个值(名称: Data,类型: REG_BINARY,数据: fe340ead)

  REG ADD HKLM\Software\MyCo /v MRU /t REG_MULTI_SZ /d fax\0mail
    添加一个值(名称: MRU,类型: REG_MULTI_SZ,数据: fax\0mail\0\0)

  REG ADD HKLM\Software\MyCo /v Path /t REG_EXPAND_SZ /d ^%systemroot^%
    添加一个值(名称: Path,类型: REG_EXPAND_SZ,数据: %systemroot%)
    注意: 在扩充字符串中使用插入符号 ( ^ )
 好了,了解了基本语法之后就可以开始写了。

首先我这脚本的需要做的事情是。修改注册表和重启服务。

@reg add HKEY_LOCAL_MACHINE\SOFTWARE\MY-SYSTEMS\ /v “test” /t REG_DWORD /d 2 /f>nul
sc stop XX.exe
sc start XX.exe

然后我们将文件保存为bat后缀。

然后直接运行,最后发现竟然报服务器拒绝错误。后来想想注册表是一个权限很高的地方,所以直接右键使用管理员权限打开。OK了。


接下来再继续写第二个脚本。这个批处理的功能是修改注册表,然后重新打开这个软件

@reg add HKEY_CURRENT_USER\Software\MY-SYSTEMS\CCC /v ATEST /t REG_DWORD /d 1 /f>nul
taskkill /f /im XX.exe
start "" "C:\Program Files (x86)\XXr\Runtime\bin\XX.exe"

同样管理员权限运行Ok!

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
批处理(bat)是一种在Windows操作系统中运行的脚本语言,它可以自动执行一系列命令来完成特定任务。在批处理中,我们可以使用一些命令来修改注册表,实现“电脑眼睛保护色”。 首先,我们需要了解注册表是什么。注册表Windows操作系统中用于存储配置信息的关键数据库,它包含了许多键(keys)和值(values),用于控制系统的功能和行为。 要实现“电脑眼睛保护色”,我们可以修改注册表中有关显示器和屏幕的键和值。具体步骤如下: 1. 打开记事本,创建一个新的批处理脚本文件,将其保存为`.bat`后缀名。 2. 使用`reg add`命令来添加或修改注册表键和值。例如,我们可以使用以下命令修改屏幕亮度: ``` reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v ScreenBrightness /t REG_DWORD /d 75 /f ``` 这个命令将会将屏幕亮度设置为75。 3. 使用`reg delete`命令来删除不需要的注册表键和值。例如,我们可以使用以下命令来删除屏幕保护程序: ``` reg delete "HKCU\Control Panel\Desktop" /v ScreenSaveActive /f ``` 这个命令将会禁用屏幕保护程序。 4. 在批处理脚本中可以添加更多的命令来修改其他需要保护眼睛的注册表键和值,例如调整显示器的对比度、色温、分辨率等等。 5. 保存并运行批处理脚本,它将会自动执行其中的命令,修改注册表来实现“电脑眼睛保护色”。 需要注意的是,修改注册表可能会对系统产生影响,所以在进行此操作前,应当备份注册表或小心谨慎地进行。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值