我正在下面的代码
void copyDir(void)
{
SHFILEOPSTRUCT s = { 0 };
s.hwnd = hwnd;
s.wFunc = FO_COPY;
s.pTo = "E:\\dest\0";
s.pFrom = "Dir\\*\0";
s.fFlags = FOF_SILENT;
SHFileOperation( &s );
}
上面的功能成功地将文件夹和子文件夹复制到目标路径,我得到的唯一问题是目标路径中不存在文件夹时的Windows提示,Windows提示“您是否要创建此文件夹”,我该如何绕过它提示和Windows显示的Windows进度栏。
您需要使用以下标志:FOF_NOCONFIRMMKDIR
s.fFlags = FOF_SILENT | FOF_NOCONFIRMMKDIR;
复制和移动操作可以指定不存在的目标目录。在这些情况下,系统会尝试创建它们,并且通常会显示一个对话框,询问用户是否要创建新目录。要取消显示此对话框并以静默方式创建目录,请在fFlags中设置FOF_NOCONFIRMMKDIR标志。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句