通过 select open save 三个bitbtn 来操作将当前的文件拷贝到目标位置,对应bitbtn的顺序 1/2/3. ‘select’用selectdirectory方法获取的目录路径就能拷贝到目标位置。open使用opendialog对话框找一个ini文件后(在别的目录建一个ini文件,谢谢),获取ini文件所在的目录路径。就拷贝不过去了。烦劳用delp hi的看看。
uses filectrl, 全局变量 pathxml
procedure TForm1.BitBtn1Click(Sender: TObject);
var xmlpath:string;
begin
selectdirectory('选择存放目录','我的电脑',xmlpath);
pathxml:=xmlpath;
edit1.Text:=pathxml;
memo1.Lines.Add(pathxml);
end;procedure TForm1.BitBtn2Click(Sender: TObject);
varbegin
opendialog1.Execute;
Fname:=opendialog1.FileName;
pathxml:=ExtractFileDir(Fname);
edit1.Text:=pathxml;
memo1.Lines.Add(pathxml);end;procedure TForm1.BitBtn3Click(Sender: TObject);begin
copyfile(pchar('sys.ini'),pchar(pathxml+'sys.ini'),False);

解决方案 »

  1.   

    copyfile里面给出完整路径应该没问题
    copyfile(pchar('c:\sys.ini'), pchar(pathxml+'sys.ini'), false)
      

  2.   

    pchar('sys.ini')  这里是你存在 ini文件的完整路径
    pchar(pathxml+'sys.ini'),  这里是你的目标路径  pathxml+'\sys.ini'
      

  3.   

    enzhiyiqiu(蜀道消程) 说的那个是个失误。当时多删了一个字符,
    我用下面的都试过,不行
    1、copyfile(pchar('sys.ini'),pchar(pathxml+'\sys.ini'),False);  
    2、copyfile(pchar(+Getcurrentdir'\sys.ini'),pchar(pathxml+'\sys.ini'),False);  
      

  4.   

    不好意思,出差了
    Getcurrentdir'得到的是当前路径,在你的程序中与 pathxml 相同,
    所以当然不行你可以用两个完整的路径测试一下,应该是可以拷贝的另外,你可以声明一个 bool 变量bool = copyfile('','',false);
    if not bool then
       showmessage('Err');
      

  5.   

    不好意思,出差了
    Getcurrentdir'得到的是当前路径,在你的程序中与 pathxml 相同,
    所以当然不行你可以用两个完整的路径测试一下,应该是可以拷贝的另外,你可以声明一个 bool 变量bool = copyfile('','',false);
    if not bool then
       showmessage('Err');
      

  6.   

    ExtractFileDir(ParamStr(0)) + '\'  搞定。概念错误