📄 qbf.prg
字号:
*数据恢复子程序
*程序名: QBF
*开发日期: 95,8,10
*程序员: 庄稼
*变量说明
*QDQ:选择驱动器
*ERR:接收错误信息
*DD:用于等待的伪变量
*TC:是否退出
*SCR1:存屏
*YYHQDQ:原隐含驱动器
*CPXYRL:磁盘剩余容量
*ESC1:READ时未修改按ESC键退出的READKEY值
*ESC2:READ时修改后按ESC键退出的READKEY值
*PS:磁盘盘数
*BBFILE:备份文件名
*JSQ:计数器
*XL:虚拟变量(无意义)
*YLJ:原路径
*BFZWJ:被复制的软盘文件(带驱动器)
*FZWJ:复制到硬盘的文件名(带驱动器及路径)
*修改记录
*1998.9.14 庄稼
*1999.5.3 庄稼
DO WHILE .T.
QX=1
TC=.F.
ERR=0
DIMENSION BBFILE(99)
JSQ=1
XL=' '
DO WHILE JSQ<100
IF JSQ<10
BBFILE(JSQ)='BB.00'+STR(JSQ,1)
ELSE
BBFILE(JSQ)='BB.0'+STR(JSQ,2)
ENDIF
JSQ=JSQ+1
ENDDO
qd=MESSAGEBOX('请插入最后一张备份盘。',65,'')
if qd=1
CLOSE TABLE ALL
DO WHILE .T.
ON ERROR ERR=ERROR()
restore from a:\ps additive
*驱动器没准备好的处理
IF ERR#0
QD=messagebox('软盘没有准备好或软盘损坏, 请检查!是否重试?',33,'')
IF qd=2
TC=.T.
EXIT
ENDIF
ERR=0
ELSE
EXIT
ENDIF
ENDDO
ON ERROR
IF TC
EXIT
ENDIF
*开始拷备软盘
SET COLOR TO
JSQ=1
SL=PS-1
*检测磁盘容量和盘正确以否
DO WHILE JSQ<=SL
=messagebox('请放第'+STR(JSQ,2)+'张盘.',64,'')
BBF=BBFILE(JSQ)
IF .NOT. FILE('A:\'+BBF)
DO WHILE .NOT. FILE('A:\'+BBF)
qx=messagebox('磁盘放错,重试?',49,'')
if qx=2
exit
endif
ENDDO
ENDIF
if qx=2
exit
endif
BBF=BBFILE(JSQ)
wait window '正在复制数据, 请稍候...' nowait
BFZWJ='A:\'+BBF
FZWJ=BBF
COPY FILE &BFZWJ TO &FZWJ
JSQ=JSQ+1
ENDDO
IF QX=2
EXIT
ENDIF
*利用ARJ在硬盘上恢复数据
wait window '数据复制完毕,下面开始处理数据,请稍候...' nowait
RUN ARJ E -Y -V1440 BB.001
DELETE FILE BB.0??
WAIT WINDOW '恢复完毕!' NOWAIT
ENDIF
EXIT
ENDDO
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -