14 IN HDELFILE hDeletedFile)
19 TRACE(
"(%p)\n", hDeletedFile);
21 hr = IRecycleBinFile_Release(rbf);
81 IRecycleBin_Release(prb);
95 IN HDELFILE hDeletedFile)
100 TRACE(
"(%p)\n", hDeletedFile);
102 hr = IRecycleBinFile_Delete(rbf);
158 hr = IRecycleBin_EmptyRecycleBin(prb);
159 IRecycleBin_Release(prb);
211 IRecycleBin *prb =
NULL;
212 IRecycleBinEnumList *prbel =
NULL;
213 IRecycleBinFile *prbf;
222 hr = IRecycleBin_EnumObjects(prb, &prbel);
227 hr = IRecycleBinEnumList_Next(prbel, 1, &prbf,
NULL);
235 if (!pFnCallback(
Context, (HDELFILE)prbf))
245 IRecycleBin_Release(prb);
247 IRecycleBinEnumList_Release(prbel);
268 if (IRecycleBinFile_IsEqualIdentity(pRBF, pCtx->
pFI) ==
S_OK)
296 ret =
SUCCEEDED(IRecycleBinFile_RemoveFromDatabase(rbf));
304 IN HDELFILE hDeletedFile)
309 TRACE(
"(%p)\n", hDeletedFile);
311 hr = IRecycleBinFile_Restore(rbf);
324 OUT IRecycleBin **pprb)
340 if (
drive < 0 || pszVolume[2] !=
L'\\')
349 IUnknown_Release(
pUnk);
361 hr = IRecycleBin_GetDirectory(pRB,
Path);
362 IRecycleBin_Release(pRB);
PRTL_UNICODE_STRING_BUFFER Path
#define ERROR_NOT_ENOUGH_MEMORY
#define ERROR_INVALID_PARAMETER
#define HeapFree(x, y, z)
#define MultiByteToWideChar
#define ERROR_INVALID_NAME
static void cleanup(void)
static BOOL CALLBACK GetRecycleBinFileHandleCallback(IN PVOID Context, IN HDELFILE hDeletedFile)
BOOL WINAPI EnumerateRecycleBinW(IN LPCWSTR pszRoot OPTIONAL, IN PENUMERATE_RECYCLEBIN_CALLBACK pFnCallback, IN PVOID Context OPTIONAL)
EXTERN_C HRESULT GetRecycleBinPathFromDriveNumber(UINT Drive, LPWSTR Path)
BOOL WINAPI EnumerateRecycleBinA(IN LPCSTR pszRoot OPTIONAL, IN PENUMERATE_RECYCLEBIN_CALLBACK pFnCallback, IN PVOID Context OPTIONAL)
BOOL WINAPI DeleteFileToRecycleBinA(IN LPCSTR FileName)
BOOL WINAPI DeleteFileToRecycleBinW(IN LPCWSTR FileName)
EXTERN_C HRESULT GetDefaultRecycleBin(IN LPCWSTR pszVolume OPTIONAL, OUT IRecycleBin **pprb)
EXTERN_C BOOL RemoveFromRecycleBinDatabase(IN const RECYCLEBINFILEIDENTITY *pFI)
BOOL WINAPI CloseRecycleBinHandle(IN HDELFILE hDeletedFile)
BOOL WINAPI DeleteFileInRecycleBin(IN HDELFILE hDeletedFile)
BOOL WINAPI RestoreFileFromRecycleBin(IN HDELFILE hDeletedFile)
struct _BBENUMFILECONTEXT BBENUMFILECONTEXT
BOOL WINAPI EmptyRecycleBinA(IN LPCSTR pszRoot OPTIONAL)
BOOL WINAPI EmptyRecycleBinW(IN LPCWSTR pszRoot OPTIONAL)
EXTERN_C HDELFILE GetRecycleBinFileHandle(IN LPCWSTR pszRoot OPTIONAL, IN const RECYCLEBINFILEIDENTITY *pFI)
EXTERN_C int WINAPI PathGetDriveNumberW(_In_ LPCWSTR)
static void *static void *static LPDIRECTPLAY IUnknown * pUnk
_In_ PIRP _In_ PIO_COMPLETION_ROUTINE _In_ PVOID Context
EXTERN_C const IID IID_IRecycleBin
BOOL(CALLBACK * PENUMERATE_RECYCLEBIN_CALLBACK)(IN PVOID Context, IN HDELFILE hDeletedFile)
#define IRecycleBinFileFromHDELFILE(hDF)
EXTERN_C HRESULT RecycleBinGeneric_Constructor(OUT IUnknown **ppUnknown)
EXTERN_C HRESULT RecycleBin5_Constructor(_In_ LPCWSTR VolumePath, _Out_ IUnknown **ppUnknown)
PULONG MinorVersion OPTIONAL
const RECYCLEBINFILEIDENTITY * pFI
DWORD WINAPI GetLastError(void)
static HRESULT HRESULT_FROM_WIN32(unsigned int x)
#define HRESULT_FACILITY(hr)
#define ERROR_GEN_FAILURE