uses ShellAPI;
function DeleteFolder(const FolderStr: string): Boolean;
var
fos: SHFILEOPSTRUCT;
begin
ZeroMemory(@fos, SizeOf(fos));
fos.Wnd := HWND_DESKTOP;
fos.wFunc := FO_DELETE;
fos.fFlags := FOF_SILENT OR FOF_ALLOWUNDO;
fos.pFrom := PChar(FolderStr + #0);
Result := SHFileOperation(fos) <> 0;
end;
function CopyFolder(const SrcFolder, DstFolder: string): Boolean;
var
fos: SHFILEOPSTRUCT;
begin
ZeroMemory(@fos, SizeOf(fos));
fos.Wnd := HWND_DESKTOP;
fos.wFunc := FO_COPY;
fos.fFlags := FOF_SILENT OR FOF_ALLOWUNDO;
fos.pFrom := PChar(SrcFolder + #0);
fos.pTo := PChar(DstFolder + #0);
Result := SHFileOperation(fos) <> 0;
end;
没什么好说的,直接上代码。
本文介绍如何利用ShellAPI实现文件夹的复制和删除操作,提供了两个实用的函数示例。
240

被折叠的 条评论
为什么被折叠?



