虚拟偶像零所有的歌:vfp程序问题,请高手指点

来源:百度文库 编辑:查人人中国名人网 时间:2024/05/06 04:59:14
在一本实例书中看到的一个数据备份程序,将其应用到实际程序中,在直接运行可执行文件时,报错:“文件正在使用”,数据备份失败。但如果先运行VFP6.0程序,再在其中“程序”栏中“运行”相关可执行程序,无错,备份成功。在其他机器上试验也是这样。

请高手帮忙指点一下,谢谢!程序如下:

m_dir=GETDIR('','请输入文件要备份到的目录:')
DO WHILE EMPTY(m_dir)
IF MESSAGEBOX('您没有选择要备份的目录。'+CHR(13)+'是否要取消备份?',4+32+256,'取消')=7
m_dir=GETDIR('','请输入文件要备份到的目录:')
ELSE
RETURN
ENDIF
ENDDO
CLOSE ALL
DEFINE WINDOWS win1 FROM 1,1 TO 7,50 IN DESKTOP SYSTEM TITLE '升级向导' COLOR RGB(0,0,0,192,192,192)
MOVE WINDOWS win1 CENTER
ACTIVATE WINDOWS win1
SET CONSOLE OFF
@ 2,10 SAY '正在备份数据,请稍候'
COPY FILE *.DBF TO (m_dir+'*.dbf')
COPY FILE *.CDX TO (m_dir+'*.cdx')
DEACTIVATE WINDOWS win1
RELEASE WINDOWS win1
MESSAGEBOX('数据已成功备份',64,'完成')

OPEN DATA gyjxc
SELE 0
USE spk
SELE 0
USE gzrr
SELE 0
USE zgs
SELE 0
USE ghs
SELE 0
USE ryk
SELE 0
USE jhd
SELE 0
USE bzk
SELE 0
USE ckrjz
SELE 0
USE thtc
SELE 0
USE ckzz
SELE 0
USE xsrjz
SELE 0
USE rzk
SELE 0
USE xsth
直接运行可执行文件时,报错:“文件正在使用”,数据备份失败

但如果先运行VFP6.0程序,再在其中“程序”栏中“运行”相关可执行程序,无错,备份成功。在其他机器上试验也是这样。

错误原因在于你指定了目标目录,但没有指定源目录,COPY FILE *.DBF TO (m_dir+'*.dbf') 这个语句将在默认目录下查找*.dbf,因而没能成功.
你可在此前加入set defa to 源目录,或用copy file 源目录\*.dbf to ...

是不是主程序已经打开了dbf文件呢?
试试先用use关闭dbf文件,然后再运行这个程序.
我也是对VFP一知半解,大家研究

在程序中加入一句:Close all
再将其编译成可执行文件试试。