无忧启动论坛

标题: 如何用批处理修改注册表值(值的字符有9616个)?win10 [打印本页]

作者: houxiren    时间: 2019-9-9 21:49
标题: 如何用批处理修改注册表值(值的字符有9616个)?win10
注册表的值字符少成功,字符多则失败,不知道是什么原因。

注册表的值字符少(72个字符):
for /f "tokens=3" %%i in ('"reg query HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer /v "ShellState""') do set aa=%%i
echo %aa:~0,9%c%aa:~10,62%
返回成功:
240000003c28000000000000000000000000000001000000130000000000000062000000

注册表的值字符多(9616个字符):
for /f "tokens=3" %%i in ('"reg query HKCU\Software\Microsoft\Windows\CurrentVersion\TaskManager /v "Preferences""') do set aa=%%i
echo %aa:~0,8057%3%aa:~8058,1558%
失败,什么都没返回!

请坛友,前辈们指教,谢谢。
作者: 2012雨晨绿软    时间: 2019-9-9 21:56
无需分开即可
作者: houxiren    时间: 2019-9-9 22:30
2012雨晨绿软 发表于 2019-9-9 21:56
无需分开即可

是指 echo %aa:~0,8057%3%aa:~8058,1558% 这句不要换行吗?不换行也不行啊。试过了。
作者: 2012雨晨绿软    时间: 2019-9-10 10:36
houxiren 发表于 2019-9-9 22:30
是指 echo %aa:~0,8057%3%aa:~8058,1558% 这句不要换行吗?不换行也不行啊。试过了。

超过字节限制的目前无解,或者用第三方工具
作者: houxiren    时间: 2019-9-10 13:43
2012雨晨绿软 发表于 2019-9-10 10:36
超过字节限制的目前无解,或者用第三方工具

什么第三方工具呢?我找来学着用。谢谢。
作者: 2012雨晨绿软    时间: 2019-9-10 13:55
houxiren 发表于 2019-9-10 13:43
什么第三方工具呢?我找来学着用。谢谢。

很多,一般用SED的多些
作者: houxiren    时间: 2019-9-10 15:01
2012雨晨绿软 发表于 2019-9-10 13:55
很多,一般用SED的多些

谢谢您。我试着找来用,或者用AHK。
作者: 窄口牛    时间: 2019-9-11 16:55
那你直接写入这个注册表值就可以了没必要费劲修改
作者: datbik189    时间: 2019-10-17 09:37
本帖最后由 datbik189 于 2019-10-17 09:43 编辑

论坛里面就PECMD2012的黑科技多,可以解决这个问题.

regi .HKCU\Software\Microsoft\Windows\CurrentVersion\TaskManager\Preferences,&V
mess. %&V%   //显示当前值
writ *c *-nl test.txt,$+0,%&V% //输出结果到test.txt文件.

regi --t:3 HKCU\Software\Microsoft\Windows\CurrentVersion\TaskManager\Preferences=0x00 0x01 0x02
//设置(REG_BINARY)值为0x00 0x01 0x03

批处理的每行命令有长度限制,如果要赋值, 字符太多了好像不行.





欢迎光临 无忧启动论坛 (http://bbs.wuyou.net/) Powered by Discuz! X3.3