用SHFileOperation就可以!
在你的单元中use shellapi单元
具体使用方法看下面的定义就知道了.声明在ShellApi单元中已经直接定义,你可以直接
拿来用!
WINSHELLAPI int WINAPI SHFileOperation(
; ; LPSHFILEOPSTRUCT lpFileOp
);
typedef struct _SHFILEOPSTRUCT{
; ; HWND ; ; ; ; hwnd;
; ; UINT ; ; ; ; wFunc;
; ; LPCSTR ; ; ; pFrom;
; ; LPCSTR ; ; ; pTo;
; ; FILEOP_FLAGS fFlags;
; ; BOOL ; ; ; ; fAnyOperationsAborted;
; ; LPVOID ; ; ; hNameMappings;
; ; LPCSTR ; ; ; lpszProgressTitle;
} SHFILEOPSTRUCT, FAR *LPSHFILEOPSTRUCT;
;
Contains information that the SHFileOperation function uses to perform file operations.
hwnd
Window handle to the dialog box to display information about the status of the file operation.
wFunc
Operation to perform. This member can be one of the following values: FO_COPY ;Copies the files specified in the pFrom member to the location specified in the pTo member.
FO_DELET ;Deletes the files specified in pFrom. (pTo is ignored.)
FO_MOVE ;Moves the files specified in pFrom to the location specified in pTo.
FO_RENAME ;Renames the files specified in pFrom. ;
pFrom
Address of a buffer to specify one or more source file names. Multiple names must be null-separated. The list of names must be double null-terminated.
pTo
Address of a buffer to contain the name of the destination file or directory. The buffer can contain multiple destination file names if the fFlags member specifies FOF_MULTIDESTFILES. Multiple names must be null-separated. The list of names must be double null-terminated.
fFlags
Flags that control the file operation. This member can be a combination of the following flags: FOF_ALLOWUNDO ;Preserve Undo information, if possible. If pFrom does not contain fully qualified path and filenames, this flag is ignored. ;
FOF_CONFIRMMOUSE ;Not currently implemented. ;
FOF_FILESONLY ;Perform the operation on files only if a wildcard file name (*.*) is specified. ;
FOF_MULTIDESTFILES ;The pTo member specifies multiple destination files (one for each source file) rather than one directory where all source files are to be deposited. ;
FOF_NOCONFIRMATION ;Respond with Yes to All for any dialog box that is displayed. ;
FOF_NOCONFIRMMKDIR ;Does not confirm the creation of a new directory if the operation requires one to be created. ;
FOF_NOCOPYSECURITYATTRIBS ;Version 4.71. Microsoft® Windows NT® only. The security attributes of the file will not be copied. ;
FOF_NOERRORUI ;No user interface will be displayed if an error occurs. ;
FOF_RENAMEONCOLLISION ;Give the file being operated on a new name in a move, copy, or rename operation if a file with the target name already exists. ;
FOF_SILENT ;Does not display a progress dialog box. ;
FOF_SIMPLEPROGRESS ;Displays a progress dialog box but does not show the file names. ;
FOF_WANTMAPPINGHANDLE ;If FOF_RENAMEONCOLLISION is specified, the hNameMappings member will be filled in if any files were renamed. ;
fAnyOperationsAborted
Value that receives TRUE if the user aborted any file operations before they were completed, or FALSE otherwise.
hNameMappings
Handle to a file name mapping object that contains an array of SHNAMEMAPPING structures. Each structure contains the old and new path names for each file that was moved, copied, or renamed. This member is used only if the fFlags member includes the FOF_WANTMAPPINGHANDLE flag. The handle must be freed by using the SHFreeNameMappings function.
lpszProgressTitle
Address of a string to use as the title of a progress dialog box. This member is used only if fFlags includes the FOF_SIMPLEPROGRESS flag.
If the pFrom or pTo members are unqualified names, the current directories are taken from the global current drive and directory settings as managed by theGetCurrentDirectory andSetCurrentDirectory functions.