Board logo

标题: 清除QQ根目录下账号文件夹-VBS版 [打印本页]

作者: zhoushijay     时间: 2007-4-21 00:56    标题: 清除QQ根目录下账号文件夹-VBS版
昨天看到有位仁兄需要解决的问题,今天帖子找不到了





'请自己修改程序中QQ文件夹的位置。
'不管是8位还是9位,只要是数字名字的文件夹都会删除!
'顺便说一句,最近的中国电视剧拍的越来越没品位了!
dim fso,finm,all
set fso=createobject("scripting.filesystemobject")
set flnm=fso.getfolder("C:\Program Files\QQ2006")
set all=flnm.subfolders


for each path in all
dim fs,fnm
set fs=createobject("scripting.filesystemobject")
fnm=fs.getfilename(path)

on error resume next
fnm=int(fnm)
if err.number<>13 then
dim list
fs.deletefolder(path)
list=list&fnm&chr(10)
end if
next
msgbox "已删除的QQ号码文件夹:"&chr(10)&list,vbinformation,"清除QQ账号存留文件"

作者: everest79     时间: 2007-4-21 02:43
for /f %i in ('dir /ad /b^|findstr /v /b /e [0-9]^|findstr /r /b /e [0-9]*[0-9]') do echo %i
我也写了一个

作者: zhoushijay     时间: 2007-4-21 02:52
....米我的效果好看 ~_~

作者: everest79     时间: 2007-4-21 03:02
嘿嘿,因为我用VBS写不出来

作者: flyinspace     时间: 2007-4-21 03:35
呵呵,但2楼的代码非常短:)

作者: everest79     时间: 2007-4-21 03:38
嘿嘿

作者: flyinspace     时间: 2007-4-21 03:40
萝卜白菜各有所爱。。。

一个漂亮,一个简洁。若是两个可以结合一起就好了:)

作者: baomaboy     时间: 2007-4-21 05:08
懒啊,所以小建议,最好是能自动搜索路径,不然有输入路径的时间,手动都删除完了。

作者: htysm     时间: 2007-4-21 05:13
不懂,偶是VBS盲。想学可学不下去。

作者: lililulula     时间: 2007-4-21 05:36
everest79兄的代码很牛,经测试可以达到效果,希望能够有详细解释,昨天我也曾经尝试写这个批,由于水平太菜,后来没写下去.望everest79兄给出注释,先谢了

作者: bjsh     时间: 2007-4-21 05:38
可以从注册表中读取路径

作者: everest79     时间: 2007-4-21 06:49
for /f %i in ('dir /ad /b^|findstr /v /b /e [0-9]^|findstr /r /b /e [0-9]*[0-9]') do echo %i

findstr /v /b /e [0-9] 这一个是用来过滤目录0的
findstr /r /b /e [0-9]*[0-9] 这个将上一步筛选过的目录名称再次过滤,这次结果就是所有QQ号目录

嘿嘿,其实这个不安全,要是没有,可能会把整个目录删掉

作者: lililulula     时间: 2007-4-21 07:01
先标记下 有空研究下 回来我还会继续提问的 (^ _^)

作者: wangweihebtu     时间: 2007-4-21 09:40
HKLM\SOFTWARE\Tencent\QQ\Install

这里可以自动整到路径

作者: waynebeat     时间: 2007-4-21 11:49
把楼主和14楼的贴粘一起,混点分,呵呵

DIm regQQpath,objShell,QQpath
Dim fso,finm,all

regQQpath = "HKLM\Software\Tencent\QQ\Install"
Set objShell = CreateObject("WScript.Shell")
QQpath = objShell.regRead(regQQpath)

set fso=createobject("scripting.filesystemobject")
set flnm=fso.getfolder(QQpath)
set all=flnm.subfolders


for each path in all
dim fs,fnm
set fs=createobject("scripting.filesystemobject")
fnm=fs.getfilename(path)

on error resume next
fnm=int(fnm)
if err.number<>13 then
dim list
fs.deletefolder(path)
list=list&fnm&chr(10)
end if
next
msgbox "已删除的QQ号码文件夹:"&chr(10)&list,vbinformation,"清除QQ账号存留文件"

作者: zhoushijay     时间: 2007-4-22 00:37
原来还可以regread,可惜我对注册表不熟悉

作者: twftawxf     时间: 2007-4-22 08:07    标题: 老兄。。。。你的VBS版,,,,,
老兄。。。。你的VBS版,,,,,我不懂,,,有没有BAT版式的啊,,,



可以献出来吗,,,
?????????????????????

作者: zouzhxi     时间: 2007-5-11 21:20
如果我要对个别QQ号文件夹保留下来,其他的删除,该怎么做呀...

作者: baomaboy     时间: 2007-5-11 23:58
Originally posted by zouzhxi at 2007-5-11 21:20:
如果我要对个别QQ号文件夹保留下来,其他的删除,该怎么做呀...


if foldername<>保留1 or foldername<>保留2 ......... then
fso.deletefolder .....
end if