以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  每隔24小时自动备份一下项目  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=178971)

--  作者:冷泉
--  发布时间:2022/8/1 9:02:00
--  每隔24小时自动备份一下项目
想实现每隔24小时自动备份一下项目,对着帮助改了一下代码,麻烦老师帮忙看看这样是对的吗?

Static dt As Date=Date.Today.adddays(-1) \'静态变量,用于保存上次备份的时间
Dim tp As TimeSpan
tp = Date.Now - dt
If tp.TotalHours >= 24 Then \'如果距离上次备份已经超过一个小时
    dt = Date.Now
    Syscmd.Project.Backup("c:\\data"True\'自动备份到c:\\data目录
End If

--  作者:有点蓝
--  发布时间:2022/8/1 9:23:00
--  
测试有什么问题?

这种用法要电脑一直开机不能睡眠、不能关机,程序要24小时不间断一直运行。

--  作者:冷泉
--  发布时间:2022/8/1 10:37:00
--  
我是想实现每天登录项目后,每天自动备份一次数据。
--  作者:有点蓝
--  发布时间:2022/8/1 10:52:00
--  
那就在AfterOpenProject事件直接【Syscmd.Project.Backup("c:\\data"True)】就行了,搞那么麻烦干啥
--  作者:冷泉
--  发布时间:2022/8/1 11:00:00
--  
AfterOpenProject事件是每次登录软件都会备份吧,如果当天登录了几次就会备份几次,我只需要当天登录,备份一次就行了
--  作者:有点蓝
--  发布时间:2022/8/1 11:09:00
--  
方法1、建一个内部表,记录一下备份时间,然后比较当天是否有备份过
2、使用配置(http://www.foxtable.com/webhelp/topics/1544.htm)记录备份时间,然后进行比较