Board logo

标题: [问题求助] VBS怎样对指定程序生成的快捷方式进行隐藏和加权限? [打印本页]

作者: rkenshin    时间: 2011-9-12 11:14     标题: VBS怎样对指定程序生成的快捷方式进行隐藏和加权限?

求一对指定程序生成的快捷方式进行隐藏和加权限

有个程序会自动在桌面上生成一个快捷方式。快捷方式的名字是随机的。快捷方式的路径为"c:\windows\file.exe HFDH434636" 前面的路径是固定。后面跟了一串随机的代码。要求是隐藏这个快捷方式。并赋予权限为everyone完全拒绝。。找了一段VBS可以实现功能。
  1. Wscript.Sleep 3000
  2. set fso=wscript.createobject("scripting.filesystemobject")
  3. set WshShell = WScript.CreateObject("WScript.Shell")
  4. set f=fso.getfolder(WshShell.SpecialFolders("Desktop"))
  5. set fs=f.files
  6. for each f1 in fs
  7. set file=fso.getfile(f1)
  8. if right(file.name,4)=".lnk" then
  9. set oShellLink=WshShell.CreateShortcut(file.name)
  10. if oShellLink.Targetpath = "C:\WINDOWS\file.exe" THEN
  11. fso.GetFile(file.name).Attributes = 2
  12. WshShell.Run ("cacls """ & file.name & """ /e /c /d everyone"), vbHide
  13. end if
  14. end if
  15. next
复制代码
但是这段代码有个缺点。一定要快捷方式和VBS放在同一目录下。。有没有高手能帮我改进一下?我只要隐藏桌面上的快捷方式。这个VBS我要放在其它的位置运行。
在线等 。
作者: s700800900    时间: 2011-9-13 08:19

  1. Wscript.Sleep 3000
  2. set fso=wscript.createobject("scripting.filesystemobject")
  3. set WshShell = WScript.CreateObject("WScript.Shell")
  4. set f=fso.getfolder(WshShell.SpecialFolders("Desktop"))
  5. set fs=f.files
  6. for each f1 in fs
  7. set file=fso.getfile(f1)
  8. if right(file.path,4)=".lnk" then
  9. set oShellLink=WshShell.CreateShortcut(file.path)
  10. if oShellLink.Targetpath = "C:\WINDOWS\file.exe" THEN
  11. fso.GetFile(file.path).Attributes = 2
  12. WshShell.Run ("cacls """ & file.path & """ /e /c /d everyone"), vbHide
  13. end if
  14. end if
  15. next
复制代码





欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2