我用delphi写了一个程序,程序文件夹下面有个叫Data的文件夹,我想通过程序把Data文件夹拷贝到我通过保存对话框选择的路径,别告诉我直接复制黏贴,我想知道的是具体的程序语句应该怎么写设计思路:先取得Data文件夹的路径,然后把Data文件夹拷贝到 选择的路径下面

解决方案 »

  1.   

    到抄的一个,你试一下。哈哈uses   SHELLAPIVar T:TSHFileOpStruct;
    P:String;
    begin
    P:='C:\2';        //文件路径
    With T do
    Begin
    Wnd:=0;
    wFunc:=FO_DELETE;
    pFrom:=Pchar(P);
    //fFlags:=FOF_ALLOWUNDO                      //删除文件进入回收站
    fFlags := FOF_NOCONFIRMATION + FOF_SILENT;    //直接删除
    End;
    SHFileOperation(T);end;
      

  2.   

      Function Copy_Dir(SourceDir,DestDir:String;nLx:Integer):Boolean;
      Var
        Opstruc: TshFileOpStruct;
        frombuf,tobuf: Array[0..128] of Char;
      begin
        FillChar(frombuf,Sizeof(frombuf),0);
        FillChar(tobuf,Sizeof(tobuf),0);
        StrPcopy(frombuf,SourceDir);
        Case nLx of
             1:
               StrPcopy(tobuf,DestDir);
        end;
        With Opstruc Do
        Begin
             Wnd:=0;
             Case nLx of
                 1: wFunc:=FO_COPY;
                 2: wFunc:=FO_DELETE;
                 Else wFunc:=FO_COPY;
             end;
             pFrom:=@frombuf;
             pTo:=@tobuf;
             fFlags:=FOF_NOCONFIRMATION;
             fAnyOperationsAborted:=False;
             hNameMappings:=Nil;
             lpszProgressTitle:=Nil;
        end;
        try
             ShFileOperation(OpStruc);
             Result:=True;
        except
             Result:=False;
        end;
      end;