VBS中FSO的问题,我用FSO对象去复制临时文件,总是报“文件没找到”
例如临时文件里有一个cgi-bin文件我的代码如下:
dim fs'定义fs
set fs=wscript.createobject("scripting.filesystemobject") 'fs 为FSO 实例
fs.copyfile "C:\Documents and Settings\Administrator\Local Settings\Temporary Internet Files\cgi-bin","d:\cgi-bin",true
运行时,直接报“找不到文件”,请问前辈们怎么解决这个问题 多数是系统不允许
cmd命令也不能复制,那里的文件还不能直接执行,手动复制也会自动重命名
回复 2# 的帖子
是啊,问题是怎么解决这些问题呀 cgi-bin是什么类型的文件, doc? txt?img?要将文件名+文件类型都写上,才能找到文件,例如:
FileSystemObject.CopyFile "c:\test\*.doc", "c:\tempfolder\"
回复 4# 的帖子
全名也没用的,那个目录比较特殊,系统是没有直接操作权限的回复 4# 的帖子
哎,帅哥能不能给个实验成功的,要注意在临时文件夹里的文件啊“C:\Documents and Settings\Administrator\Local Settings\Temporary Internet Files” 这个是在某个用户下的临时文件夹啊你登陆用户有操作权限吗
回复 7# 的帖子
我用的是Adimistrator。所谓找不到,不是看不见,或者不能右键复制,而是用FSO不能找到,怎么办啊?回复 8# 的帖子
换突破口吧。。。那个目录的文件不一样的,或者说不是实体文件那个目录可以同名文件,可以非法名称文件。。。显然不是和一般的文件处理相同的
回复 9# 的帖子
大哥,能给个解决方案不? 特殊文件夹要用特殊方法,哥给你个方法吧,代码如下:Const TEMPORARY_INTERNET_FILES = &H20&
Set oShell = CreateObject("Shell.Application")
Set oFolder = oShell.Namespace(TEMPORARY_INTERNET_FILES)
Set oTarget = oShell.NameSpace( "d:\cgi-bin" )
For Each oItem in oFolder.Items '会拷贝所有文件名包含cgi-bin的文件到d:\cgi-bin目录
If InStr(oItem.Name,"cgi-bin") Then
oTarget.CopyHere oItem
End If
Next
Set oTarget = Nothing
Set oFolder = Nothing
Set oShell= Nothing 是可以,就是有些缺点,重复的文件名拷出来就不知道哪个是1,哪个是2了。 原帖由 skyzhu 于 2010-8-5 10:58 发表 http://bbs.51testing.com/images/common/back.gif
是可以,就是有些缺点,重复的文件名拷出来就不知道哪个是1,哪个是2了。
既然都有了突破,应该有完善解决方案 参考资料:http://zhidao.baidu.com/question/114808988.html
回复 1# 的帖子
你复制的是文件,你路径是文件夹至少加个。“\”
页:
[1]