autt 发表于 2011-10-16 22:08:01

主键相同,用regwrite可以批量写子键不??

要操作注册表键/值如下:

 
"Actor"="" 
"SocialUI"=dword:00000000 
"UsageCount"=dword:00000000 
"UseAdvancedSearchAlways"=dword:00000001 


我写的是这样的
RegWrite("HKCU\Software\Microsoft\Search Assistant","Actor","REG_SZ","")
RegWrite("HKCU\Software\Microsoft\Search Assistant","SocialUI","REG_DWORD","0")
RegWrite("HKCU\Software\Microsoft\Search Assistant","UsageCount","REG_DWORD","0")
RegWrite("HKCU\Software\Microsoft\Search Assistant","UseAdvancedSearchAlways","REG_DWORD","1")


因为主键都相同,我这样写是不是太浪费了?
能不能所有子键/值都在一行中,有点类似@LF的意思

autt 发表于 2011-10-16 22:11:14

可能意思不明了,有点类似如下的
就是类似这样的
RegWrite("HKCU\Software\Microsoft\Search Assistant","Actor","REG_SZ","" ,&@LF& "SocialUI","REG_DWORD","0" &@LF&"UsageCount","REG_DWORD","0" )

呵呵

xianhou 发表于 2011-10-16 22:55:32

自己弄一个函数不就完了?

gzh888666 发表于 2011-10-16 23:28:09

本帖最后由 gzh888666 于 2011-10-16 23:29 编辑

循环写入倒是可以,但一样麻烦!能不能这样Func Rw($1,$2,$3)       
RegWrite("HKCU\Software\Microsoft\Search Assistant",$1,$2,$3)
EndFunc

xwt620 发表于 2011-10-16 23:51:02

如果是手打出来的,那还不如就这样,如果是变量保存那就用三维数组保存后,for循环写入
这个原理有点类似_IniWriteSection

netegg 发表于 2011-10-17 20:01:19

本帖最后由 netegg 于 2011-10-17 20:02 编辑

回复 1# autt
浪费什么,你确定你的数据类型都一样的话,倒是可以随便建个函数套进去,如果不是,老实写
要是只是觉得键名太长
$key = '.......'
regwrite($key, ......)

qqgghh1 发表于 2011-10-18 09:09:25

赞同NETEGG的观点

chen5306514 发表于 2011-10-18 09:17:28

还好吧? 如果内容确实太多,就自己写个函数,或者循环写吧,一样的麻烦,动态写可能有这个必要

魔导 发表于 2011-10-18 10:35:14

顶起 好东西{:1_498:}

autt 发表于 2011-10-18 19:47:40

回复 3# xianhou
我不懂函数{:face (319):}

autt 发表于 2011-10-18 19:49:10

哎,就老实一个一个写吧
页: [1]
查看完整版本: 主键相同,用regwrite可以批量写子键不??