您的位置:首页 > 编程语言 > C#

C# 使用SHFileOperation 复制文件 注意引用方式

2015-01-07 15:57 357 查看
注意在引用Dll 时,[ [DllImport("shell32.dll", CharSet = CharSet.Unicode)],后面的 [ CharSet = CharSet.Unicode)] 一定要添加,否则出现未知错误。

引用 SHFILEOPSTRUCT 结构体时 也要设置CharSet ,否则也会出现未知错误。

[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Unicode)]

public struct SHFILEOPSTRUCT

{

public IntPtr hwnd;

[MarshalAs(UnmanagedType.U4)]

public int wFunc;

public string pFrom;

public string pTo;

public short fFlags;

[MarshalAs(UnmanagedType.Bool)]

public bool fAnyOperationsAborted;

public IntPtr hNameMappings;

public string lpszProgressTitle;

}



在此记一下,调试时郁闷自己很久,关键是没有对C# 系统学习,不清楚DllImport 的用法。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: