freesoft00 发表于 2022-11-18 14:03:55

reg delete删除子项

Windows Registry Editor Version 5.00




"CalibrationManagementEnabled"=dword:00000000
"DisplayCalibrator"="%SystemRoot%\\System32\\DCCW.exe"


"camp"="D65.camp"
"ri"=dword:00000000
"riac"="MediaSim.gmmp"
"rip"="Photo.gmmp"
"rirc"="Proofing.gmmp"
"ris"="Graphics.gmmp"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ICM路径下面的注册表有很多子项,名称不固定
是不是需要reg query先查询出来这些项,然后再reg delete删除,需要用到for循环是吗

具体应该如何编写

sunsea 发表于 2022-11-18 14:21:46

本帖最后由 sunsea 于 2022-11-18 14:23 编辑

准备两个文件,第一个文件这样:
Windows Registry Editor Version 5.00

[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ICM]
以UTF16 LE编码保存,先导入这个,再
Windows Registry Editor Version 5.00


"CalibrationManagementEnabled"=dword:00000000
"DisplayCalibrator"="%SystemRoot%\\System32\\DCCW.exe"

……
试试?还是你有保留某些项的需求?

527104427 发表于 2022-11-18 14:27:29

考虑用pecmd的话,如下:

envi^ envimode=1
envi^ forcelocal=1
set a=HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ICM
regi --init --ak b=%a%\,c
forx *nl c,d,regi %a%\%d%!
mess完成



手机敲的代码,没测试






freesoft00 发表于 2022-11-18 14:28:41

sunsea 发表于 2022-11-18 14:21
准备两个文件,第一个文件这样:

以UTF16 LE编码保存,先导入这个,再


那道没有必须保留的需要。
因为是非本机,所以下面的内容是不固定的,这样保存2个文件只能本机适合。

freesoft00 发表于 2022-11-18 14:29:55

Calibration]
RegisteredProfiles]
这些都需要删除的,删除后这些项下面的键值也就都删除了

freesoft00 发表于 2022-11-18 14:31:26

527104427 发表于 2022-11-18 14:27
考虑用pecmd的话,如下:

envi^ envimode=1


和上面sunsea兄弟说的情况类似,因为是非本机操作,所以不见的有pecmd。
如果能纯批处理嘴还了。

sunsea 发表于 2022-11-18 14:33:41

freesoft00 发表于 2022-11-18 14:29



那就直接Windows Registry Editor Version 5.00

[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ICM\Calibration]

[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ICM\RegisteredProfiles]即可。然后之后再干什么就随你了。不希望出现文件的话可以用批处理生成这几行的临时文件。

freesoft00 发表于 2022-11-18 14:37:01

sunsea 发表于 2022-11-18 14:33
那就直接即可。然后之后再干什么就随你了。不希望出现文件的话可以用批处理生成这几行的临时文件。
红色的2个项是不固定的。也许是更多,上面只是举例列出了2个。名称和个数都不固定

sunsea 发表于 2022-11-18 14:40:25

本帖最后由 sunsea 于 2022-11-18 14:42 编辑

freesoft00 发表于 2022-11-18 14:37
红色的2个项是不固定的。也许是更多,上面只是举例列出了2个。名称和个数都不固定
那就直接Windows Registry Editor Version 5.00

[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ICM]吧。

reg delete "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ICM" /f应该也行。

你是需要保留HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ICM本身下面的键值但是删除HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ICM\*吗?我看了下我电脑(10.0.19045.2311)HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ICM本身没有键值,所以直接强删应该没有问题。

freesoft00 发表于 2022-11-18 14:43:26

sunsea 发表于 2022-11-18 14:40
那就直接吧。

应该也行。


嗯,这样也行。

holley2008 发表于 2022-11-18 18:38:28

批处理删除先导出一下,再直接一点 没必要for了

826773297 发表于 2022-11-18 20:19:15

sunsea 发表于 2022-11-18 14:40
那就直接吧。

应该也行。


就是这样,不用搞这么复杂

Cosplay 发表于 2022-11-19 00:00:35

谢谢分享   

abcd66099 发表于 2022-11-19 07:29:31

谢谢分享   

nowayer 发表于 2023-12-1 16:48:44

yyz2191958 发表于 2023-12-2 08:45:23

进来学习
页: [1]
查看完整版本: reg delete删除子项