11 typedef struct _DELETED_FILE_DETAILS_A
13 FILETIME LastModification
;
14 FILETIME DeletionTime
;
15 ULARGE_INTEGER FileSize
;
16 ULARGE_INTEGER PhysicalFileSize
;
18 CHAR FileName
[ANY_SIZE
];
19 } DELETED_FILE_DETAILS_A
, *PDELETED_FILE_DETAILS_A
;
20 typedef struct _DELETED_FILE_DETAILS_W
22 FILETIME LastModification
;
23 FILETIME DeletionTime
;
24 ULARGE_INTEGER FileSize
;
25 ULARGE_INTEGER PhysicalFileSize
;
27 WCHAR FileName
[ANY_SIZE
];
28 } DELETED_FILE_DETAILS_W
, *PDELETED_FILE_DETAILS_W
;
30 #define DELETED_FILE_DETAILS DELETED_FILE_DETAILS_W
31 #define PDELETED_FILE_DETAILS PDELETED_FILE_DETAILS_W
33 #define DELETED_FILE_DETAILS DELETED_FILE_DETAILS_A
34 #define PDELETED_FILE_DETAILS PDELETED_FILE_DETAILS_A
37 typedef BOOL (WINAPI
*PENUMERATE_RECYCLEBIN_CALLBACK
)(IN PVOID Context
, IN HANDLE hDeletedFile
);
40 CloseRecycleBinHandle(
41 IN HANDLE hDeletedFile
);
44 DeleteFileToRecycleBinA(
47 DeleteFileToRecycleBinW(
50 #define DeleteFileToRecycleBin DeleteFileToRecycleBinW
52 #define DeleteFileToRecycleBin DeleteFileToRecycleBinA
60 IN WCHAR driveLetter
);
62 #define EmptyRecycleBin EmptyRecycleBinW
64 #define EmptyRecycleBin EmptyRecycleBinA
70 IN PENUMERATE_RECYCLEBIN_CALLBACK pFnCallback
,
75 IN PENUMERATE_RECYCLEBIN_CALLBACK pFnCallback
,
78 #define EnumerateRecycleBin EnumerateRecycleBinW
80 #define EnumerateRecycleBin EnumerateRecycleBinA
84 GetDeletedFileDetailsA(
85 IN HANDLE hDeletedFile
,
87 IN OUT PDELETED_FILE_DETAILS_A FileDetails
,
88 OUT LPDWORD RequiredSize OPTIONAL
);
90 GetDeletedFileDetailsW(
91 IN HANDLE hDeletedFile
,
93 IN OUT PDELETED_FILE_DETAILS_W FileDetails
,
94 OUT LPDWORD RequiredSize OPTIONAL
);
96 #define GetDeletedFileDetails GetDeletedFileDetailsW
98 #define GetDeletedFileDetails GetDeletedFileDetailsA
103 IN HANDLE hDeletedFile
);
109 #endif /* __RECYCLEBIN_H */