if MakeSureDirectoryPathExists(PChar(\'DestPath\\\')) then // Opretter \'DestPath\\\', hvis den ikke eksisterer Succes := CopyFile(PChar(\'SavePath\\Filename\'), PCar(\'DestPath\\Filename\', True);
Sidste parameter i CopyFile gør, at filen ikke overskriver en eksisterende fil med samme navn. Sæt til False, hvis du under alle omstændigheder vil have filen flyttet.
Make... siger næsten sig selv, slå yderligere op i hjælpen.
Hvis det skal være cool, så kan du også prøve denne metode:
function ShellFileCopy(const SrcList,DstList: TStringList; const Title:String):boolean; var FileOpInfo:TSHFileOpStruct; cFrom,cTo:array[0..8191] of char; cTitle:array[0..63] of char; i,x,err:integer; begin {check input validity} if (SrcList=nil) or (DstList=nil) or (SrcList.Count=0) or (DstList.Count=0) then begin result:=false; exit; end;
{copy names from SrcList to cFrom} FillChar(cFrom, sizeof(cFrom), #0); x:=0; for i:=0 to pred(SrcList.Count) do begin StrPCopy(@cFrom[x],SrcList[i]); x:=x+length(SrcList[i])+1; end;
{copy names from DstList to cTo} FillChar(cTo, sizeof(cTo), #0); x:=0; for i:=0 to pred(DstList.Count) do begin StrPCopy(@cTo[x],DstList[i]); x:=x+length(DstList[i])+1; end;
{copy animation dialog title} FillChar(cTitle, sizeof(cTitle), #0); if Title>\'\' then StrPCopy(cTitle,Title);
{fill API data block} FillChar(FileOpInfo,SizeOf(FileOpInfo),#0); with FileOpInfo do begin Wnd:=Application.MainForm.Handle; wFunc:=FO_Copy; pFrom:=cFrom; pTo:=cTo; lpszProgressTitle:=cTitle; fFlags:=FOF_FilesOnly; if DstList.Count>1 then fFLags:=fFlags or FOF_MultiDestFiles; end;
{now do it} err:=SHFileOperation(FileOpInfo); result:=(err=0); end;
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.