jisushizhe 发表于 2009-9-24 18:23:45

请教一个可以删除注册表启动项的代码

由于学习系统封装,接触到AU3,但是刚学,一时想不到应该怎么弄,请教一个可以删除注册表启动项的代码?
   怎么在AU3里面删除   下面的子项。但是要保留一个internat.exe(输入法)子项!
    麻烦写个列子我参考学习下!谢谢

sxd 发表于 2009-9-24 18:25:42

请看 RegDelete的帮助例子

RegDelete("HKEY_CURRENT_USER\Software\Test", "TestKey")

lpxx 发表于 2009-9-24 20:07:15

for $i=1 to 10
$var=RegEnumKey
if StringLeft($var,12)="internat.exe" then
;;;;;;;;;;;
ElseIf
;;;;;;;;;;

jisushizhe 发表于 2009-9-24 20:09:31

2# sxd
楼主这个应该是只能删除指定的子项吧!
如果我不知道有几个子项,但是要保留一个internat.exe(输入法)子项!
怎么写法呢?

netegg 发表于 2009-9-24 20:13:58

while...wend

netegg 发表于 2009-9-24 20:17:33

本帖最后由 netegg 于 2009-9-24 20:19 编辑

$i=1
while 1
$key=regenumkey("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run", $i)
if $key="" then exitloop
if $key<>"intranat.exe" then
regdelete("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run", $key)
endif
$i+=1
wend

newx 发表于 2009-9-24 20:27:15

删除全部未知项,然后添加intranat.exe

sxd 发表于 2009-9-24 20:45:20

2# sxd
楼主这个应该是只能删除指定的子项吧!
如果我不知道有几个子项,但是要保留一个internat.exe(输入法)子项!
怎么写法呢?
jisushizhe 发表于 2009-9-24 20:09 http://www.autoitx.com/images/common/back.gif
这种情况就是 先获取总数 再for 历遍

jisushizhe 发表于 2009-9-24 21:21:51

6# netegg 使用楼主的代码运行出错!

netegg 发表于 2009-9-24 21:46:30

有什么提示吗

netegg 发表于 2009-9-24 21:58:11

9# jisushizhe
$i=1
while 1
$key=RegEnumVal("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run", $i)
if @error<>0 then exitloop
if $key<>"intranat.exe" then
ConsoleWrite($key& @crlf)
endif
$i+=1
wend

jisushizhe 发表于 2009-9-24 23:35:44

就是脚本运行不了!

netegg 发表于 2009-9-24 23:51:34

11#层给你的也不行?
页: [1]
查看完整版本: 请教一个可以删除注册表启动项的代码