1、直接拷贝表文件;
2、用TBatchMove控件;
2、用TBatchMove控件;
解决方案 »
- Hint小问题!
- 在禁止PING的情况下,如何得知与目标机器是否正常连接?
- 用query从table查询出来的结果可以修改吗?如何修改
- 运行时出错,求教高手
- 小弟要做一个小东西!大虾给出出主意谈谈思路!(吐血)
- Delphi中如何将Table的数据转成XML档案?
- 如何制作Delphi的Debug Version?
- delphi DbGrid使固定列不随滚动条滚动而滚动
- 请问怎么转换整数和日期?
- 请教各位高手。
- 難道是BUG!!!:tnmsmtp發送RTF格式信件問題.大家試試.
- 求delphi版的Ginadll原代码?(ttp://www.vchelp.net/article/submit/cad_key.htm)
昨天老千教偶这么写:DeleteFile('C:\Test.Mdb');//删除
RenameFile('C:\Test.Mdb');//重命名
CopyFile(pchar('C:\Test.Mdb'),pchar('D:\Test.Mdb'),False);//复制但偶想指定文件存取的位置,怎么版呢?还有msdn是什么呢(偶太菜了)
:sPath:String;
begin
sPath := 你指定的路径~~~
DeleteFile(sPath+'\Test.Mdb');//删除
RenameFile(sPath+'\Test.Mdb');//重命名
CopyFile(pchar(sPath+'\Test.Mdb'),pchar(sPath+'\Test.Mdb'),False);//复制
end;
这程序里怎么处理?
我是说用户指定的路径
可能是多种多样
尤其软件安装时
安装目录也不同能不能用 另存对话框
偶没有找到 另存dialog
请用一个opendialog的控件吧。
其实也可以用selectdirectory这个函数。
opendialog只能打开,savedialog只能保存
当选中data数据库,需要 另存 在某一处时,
怎么版呢?
老瓦,那个函数怎么用?
偶再去win31找找
在用每个表的BatchMove方法备份文件dir+'\filename.ext'就可以了。
偶用的三个win31组件:drive,direction,file及一个savedialog
互相套接
在 保存 按钮下这么写
savedialog.execute
但无法实现保存
还要别的代码
怎么写呢?
就用dbicopyfile
查一下帮助
这个可以连相关的索引等文件也一起复制的
但总是现实在tibsql,
安 显示 说:查不到
把和数据库相关的文件全部复制到另一个目录里就可以了,相关函数 SelectDirectory //选择目录
copyfile //复制文件
application.Exename //带路径的可执行文件名,根据这个来定位相对目录
uses FileCtrl;
SelectDirectory(窗口标题, '桌面',dir),然后dir变量里就是你所选择的结果
最后, CopyFile(PChar(原文件),PChar(目标文件),False)
拜托,再帮一把
偶对函数变量那一部分很不了解
上述的
偶自己解决还有些吃力
数据备份是偶的通讯录最后一个模块了
偶想先做好,而后再仔细研究
经过这一段没明没夜的干
偶受益很多
需要停下来
捉摸捉摸偶又找到一个bug
偶用
qxs:='';
for i:=0 to CheckListBox2.Items.Count-1 do
if CheckListBox2.Checked[i] then
qxs:='1'+qxs
else
qxs:='0'+qxs;
把checklistbox的数据读回权限数据库
权限与字符串应该是对应的
但是有时候他们对应
有时候正好相反
比如最后一个check被选中
那么字符串最后一个应该是1
但是数据显示却是字符串第一个值变成了1
把for i:=0 to CheckListBox2.Items.Count-1 do
改成for i:=CheckListBox2.Items.Count-1 downto 0 do
关于备份:
var
i,j:integer;
dir,ExeName,path:string;
begin
//假设数据库文件在程序目录的 db子目录中,默认备份文件在 backup子目录中
//数据库文件叫 db.mdb
ExeName:=application.ExeName;
j:=0;
for i:=1 to length(ExeName) do
if ExeName[i]='\' then
j:=i;
path:=copy(ExeName,1,j); //取程序的相对路径
if SelectDirectory('请选择备份文件路径', '我的电脑',dir) then
begin
if dir[length(dir)]<>'\' then
dir:=dir+'\';
if not CopyFile(path+'db\db.mdb',dir+'db.mdb',FALSE) then
MessageBox(Application.Handle,PChar('拷贝文件错误'),PChar('错误提示'),MB_OK);
end
else //如果没有选择路径,则用默认路径
if not CopyFile(path+'db\db.mdb',path+'backup\db.mdb',FALSE) then
MessageBox(Application.Handle,PChar('拷贝文件错误'),PChar('错误提示'),MB_OK);
系统提示着一行有错误:
if not CopyFile(path+'db\db.mdb',dir+'db.mdb',FALSE) then
光标停在括号里第一个 , 号后