以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  流不支持写入  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=145626)

--  作者:qaz17909
--  发布时间:2020/2/2 19:51:00
--  流不支持写入
给服务器端的目录文件做压缩备份,写在管理计划里,间隔时间是3600000毫秒。每次都是前两天正常执行备份,到第三天便出现“流不支持写入”的错误提示,这是怎么回事?代码如下:备份开始时间是0,备份结束时间是1,备份保留天数是10
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:代码.txt


[此贴子已经被作者于2020/2/2 19:52:21编辑过]

--  作者:有点蓝
--  发布时间:2020/2/2 20:15:00
--  
这个是写文件的时候有冲突,无法写入

1、关闭杀毒软件试试。
2、看看磁盘是不是满了
3、要压缩的文件正在被使用,无法压缩

--  作者:qaz17909
--  发布时间:2020/2/4 14:46:00
--  
前面两个原因应该不是,第三个感觉也不应该。我关闭了杀毒软件,现在出错提示为:请求的操作无法在使用用户映射区域打开的文件上执行。
--  作者:有点蓝
--  发布时间:2020/2/4 15:15:00
--  
就是第三种情况:https://www.baidu.com/baidu?word=请求的操作无法在使用用户映射区域打开的文件上执行

文件冲突,导致无法被压缩或者复制。

1、程序设置为使用管理员身份运行
2、看看要压缩的目录是否包含隐藏的系统文件,如图片缩略图缓存,office文档缓存文件等等

--  作者:qaz17909
--  发布时间:2020/2/5 20:14:00
--  
是以管理员身份运行的,那如果是第二种情况(有系统文件),应如何解决?
--  作者:有点蓝
--  发布时间:2020/2/6 11:03:00
--  
1、手动把系统文件全部删除掉
2、不要压缩整个项目,而是逐个处理里面的文件
3、不要把服务端项目当做客户端打开使用,一般就不会生成缓存系统文件的

--  作者:qaz17909
--  发布时间:2020/2/15 21:21:00
--  
我要备份的不是项目文件,而是产生或引用的各种文档的存放于服务器上的文件。发现可能是因为传递过程中出错或者意外终止,导致生成一些缓存文件,从而正常压缩备份。如果在压缩前对整个文件夹的只读属性勾选去掉后就可以正常备份。但似乎无法避免操作过程中产生缓存文件,有没好办法?
--  作者:有点蓝
--  发布时间:2020/2/16 20:16:00
--  
先使用代码设置一下文件属性,再压缩

去除文件夹的只读属性
Dim DirInfo As new System.IO.DirectoryInfo("D:\\问题\\qqclient")
DirInfo.Attributes = System.IO.FileAttributes.Normal And System.IO.FileAttributes.Directory

去除文件的只读属性
For Each File As String In FileSys.GetFiles("C:\\备份目录")
  system.io.File.SetAttributes(File, system.io.FileAttributes.Normal)
Next

--  作者:qaz17909
--  发布时间:2020/2/18 20:40:00
--  
还有个问题,就是有多级目录的时候应该怎么弄?windos系统更改只读属性时,可“将更改应用于此文件夹、子文件夹和文件”,代码如何实现?
--  作者:有点蓝
--  发布时间:2020/2/18 20:58:00
--  
递归遍历子目录:http://www.foxtable.com/webhelp/topics/1413.htm