马上加入TC
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
本帖最后由 一盏青灯 于 2019-10-29 23:13 编辑
改了下论坛上的VBS删除文件夹的代码,改为专门删除 rc 目录的代码
原理:就是写出vbs脚本文件运行,vbs脚本代码里加个延时,就可以等待自身程序完全退出后执行删除代码
rc目录 一般都会自动删除的,以前的tc貌似使用dllcall rc目录的dll会导致残留,现在tc7.0版本好像没这问题l了
- function 删除RC目录ByVBS(参_VBS运行延时=500)
-
- if(转整型(参_VBS运行延时) == null)
- 参_VBS运行延时 = 500
- else
- 参_VBS运行延时 = 转整型(参_VBS运行延时)
- end
-
- var VBS文件路径, VBS文件句柄, VBS脚本源码
-
- VBS文件路径 = 系统获取系统路径(2) & 随机数(100000000, 2147483647) & ".vbs"
- while(文件是否存在(VBS文件路径) != 0)
- VBS文件路径 = 系统获取系统路径(2) & 随机数(100000000, 2147483647) & ".vbs"
- end
-
- VBS文件句柄 = 文件创建(VBS文件路径, "创建文件|读写")
- if(VBS文件句柄 == -1)
- return false
- end
-
- VBS脚本源码 = "On Error Resume Next\r\n"
- VBS脚本源码 = VBS脚本源码 & "WScript.Sleep " & 参_VBS运行延时 & "\r\n"
- VBS脚本源码 = VBS脚本源码 & "Set FSO = CreateObject(\"Scripting.FileSystemObject\")\r\n"
- VBS脚本源码 = VBS脚本源码 & "FSO.DeleteFile \"" & 获取资源路径("rc:*.*") & "\", True\r\n"
- VBS脚本源码 = VBS脚本源码 & "FSO.DeleteFolder \"" & 字符串移除(获取资源路径("rc:"), 1, false) & "\", True\r\n"
- VBS脚本源码 = VBS脚本源码 & "FSO.DeleteFile \"" & VBS文件路径 & "\", True\r\n"
- VBS脚本源码 = VBS脚本源码 & "Set FSO = Nothing"
-
- if(文件写入字符(VBS文件句柄, VBS脚本源码) == false)
- 文件关闭(VBS文件句柄)
- 文件删除(VBS文件路径)
- return false
- end
- 文件关闭(VBS文件句柄)
-
- 命令(VBS文件路径, false)
-
- return true
- end
复制代码
|