|
|
//+-------------------------------------------------------------------------
//
// Microsoft Windows
//
// Copyright (C) Microsoft Corporation, 1996 - 1999
//
// File: util.h
//
// miscellaneous utility functions
//
//--------------------------------------------------------------------------
#ifndef _UTIL_H_
#define _UTIL_H_
STDMETHODIMP IDA_BindToFolder(LPIDA pIDA, LPSHELLFOLDER *ppsf);
STDMETHODIMP IDA_GetItemName(LPSHELLFOLDER psf, LPCITEMIDLIST pidl, LPTSTR pszName, UINT cchName, SHGNO uFlags = SHGDN_FORPARSING); STDMETHODIMP IDA_GetItemName(LPSHELLFOLDER psf, LPCITEMIDLIST pidl, LPTSTR *ppszName, SHGNO uFlags = SHGDN_FORPARSING);
typedef DWORD (WINAPI *PFN_READ_SD)(LPCTSTR pszItemName, SECURITY_INFORMATION si, PSECURITY_DESCRIPTOR* ppSD);
STDMETHODIMP DPA_CompareSecurityIntersection(HDPA hItemList, PFN_READ_SD pfnReadSD, BOOL *pfOwnerConflict, BOOL *pfGroupConflict, BOOL *pfSACLConflict, BOOL *pfDACLConflict, LPTSTR *ppszOwnerConflict, LPTSTR *ppszGroupConflict, LPTSTR *ppszSaclConflict, LPTSTR *ppszDaclConflict, LPTSTR *ppszFailureMsg, LPBOOL pbCancel);
STDMETHODIMP GetRemotePath(LPCTSTR pszInName, LPTSTR *ppszOutName);
void LocalFreeDPA(HDPA hList);
BOOL IsSafeMode(void);
BOOL IsGuestAccessMode(void);
BOOL IsSimpleUI(void);
BOOL IsUIHiddenByPrivacyPolicy(void);
HRESULT BindToObjectEx(IShellFolder *psf, LPCITEMIDLIST pidl, LPBC pbc, REFIID riid, void **ppv); HRESULT BindToFolderIDListParent(IShellFolder *psfRoot, LPCITEMIDLIST pidl, REFIID riid, void **ppv, LPCITEMIDLIST *ppidlLast); BOOL SetAclOnRemoteNetworkDrive(HDPA hItemList, SECURITY_INFORMATION si, PSECURITY_DESCRIPTOR pSD, HWND hWndPopupOwner);
void GetSystemPaths(LPWSTR * ppszSystemDrive, LPWSTR * ppszSystemRoot);
BOOL SetAclOnSystemPaths(HDPA hItemList, LPCWSTR pszSystemDrive, LPCWSTR pszSystemRoot, SECURITY_INFORMATION si, HWND hWndPopupOwner);
#endif /* _UTIL_H_ */
|