关于回收站的疑问

//删除文件到回收站
API: SHFileOperation
//清空回收站
API: SHEmptyRecycleBin
//检索回收站信息
API: SHQueryRecycleBinA
//恢复回收站文件
在recycled目录下,有个Info2的文件,文件被回收后都被修改了名称,并保存信息到这个文件内,但操作系统不同,结构也不同;所要做的就是根据info2 文件的内容遍历并move 文件到原始位置
看看v 4的结构
偏移   长度   含义
0~259 ,260 ,原文件或目录名称,如果0字节是0,表示无效
260~2634 ,文件编号
264~2674 ,驱动盘编号0表示A,1=b,2=..
268~2758 ,删除时间
276~2794 ,文件或目录占用空间(字节,保留到“簇”)
v5的结构
偏移   长度   含义
0~259 ,260 ,原文件或目录的短名称8.3命名,如果0字节是0,表示无效
260~2634 ,文件编号
264~2674 ,驱动盘编号0表示A,1=b,2=..
268~2758 ,删除时间
276~2794 ,文件或目录占用空间(字节,保留到“簇”)
280~799,520,原文件完整名称,Unicode


另外,这些信息都是我原来用delphi 搞的,C#无代码可供参考,抱歉。
原文地址:https://www.cnblogs.com/Chinasf/p/139200.html