用批处理修改注册表数据时用十六进制还是十进制

来源:百度知道 编辑:UC知道 时间:2024/06/27 23:52:47
比如我想修改一个注册表的键值数据
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced\Folder\Hidden\SHOWALL 里 CheckedValue的键值为0
而我想用批处理将他修改为FFFFFFFF,我就用下面的批处理
@echo off
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced\Folder\Hidden\SHOWALL" /v CheckedValue /t reg_dword /d FFFFFFFF /f
可是这样写显示命令参数过多,修改不了。改去改来我把他改成十进制就可以修改了。就把FFFFFFFF改成4294967295。
我想问的就是,我在网上查发现别人都是用十六进制修改的,为什么我的机器必须用十进制呢?是我电脑的原因吗?还有就是如果我用十进制的制作的BAT文件放在其他电脑上能修改注册表吗?

以0x开头的表示十六进制,以0(数字)开头的表示八进制,其它的表示十进制
把FFFFFFFF改成0xFFFFFFFF就可以了

BAT文件就这样写
@echo off
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced\Folder\Hidden\SHOWALL" /v CheckedValue /t reg_dword /d 0 /f

也可以这样写

REGEDIT4
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced\Folder\Hidden\SHOWALL] "这是一行
"CheckedValue"=dword:00000000
保存时把后缀名改为.reg就行了

只要你的文件能运行,相同系统的都能修改