public int copyFileLocal(StringBuilder frompath, StringBuilder topath)
 {
     ToolsLibrary.CopyFile.SHFILEOPSTRUCT op = new ToolsLibrary.CopyFile.SHFILEOPSTRUCT();
     op.hwnd = IntPtr.Zero;
     op.wFunc = ToolsLibrary.CopyFile.FileFuncFlags.FO_COPY;
     op.pFrom = frompath.ToString();// 需要注意,最后需要加入"\0"表示字符串结束,如果需要拷贝多个文件,则 file1 + "\0" + file2 + "\0"...
     op.pTo = topath.ToString();// 需要注意,最后需要加入"\0"表示字符串结束
     op.hNameMappings = IntPtr.Zero;
     op.fFlags = ToolsLibrary.CopyFile.FILEOP_FLAGS.FOF_NOCONFIRMMKDIR;
     op.fAnyOperationsAborted = false;
     int ret = ToolsLibrary.CopyFile.SHFileOperation(ref op);
     return ret;
 }
        public int copyFileLocal(StringBuilder frompath, StringBuilder topath)
        {
            ToolsLibrary.CopyFile.SHFILEOPSTRUCT op = new ToolsLibrary.CopyFile.SHFILEOPSTRUCT();
            op.hwnd                  = IntPtr.Zero;
            op.wFunc                 = ToolsLibrary.CopyFile.FileFuncFlags.FO_COPY;
            op.pFrom                 = frompath.ToString(); // 需要注意,最后需要加入"\0"表示字符串结束,如果需要拷贝多个文件,则 file1 + "\0" + file2 + "\0"...
            op.pTo                   = topath.ToString();   // 需要注意,最后需要加入"\0"表示字符串结束
            op.hNameMappings         = IntPtr.Zero;
            op.fFlags                = ToolsLibrary.CopyFile.FILEOP_FLAGS.FOF_NOCONFIRMMKDIR;
            op.fAnyOperationsAborted = false;
            int ret = ToolsLibrary.CopyFile.SHFileOperation(ref op);

            return(ret);
        }