| 1 | /** | 
 
 
 
 
 | 2 | * This file is part of the mingw-w64 runtime package. | 
 
 
 
 
 | 3 | * No warranty is given; refer to the file DISCLAIMER within this package. | 
 
 
 
 
 | 4 | */ | 
 
 
 
 
 | 5 | #include <winapifamily.h> | 
 
 
 
 
 | 6 |  | 
 
 
 
 
 | 7 | #ifndef _ADSHLP_ | 
 
 
 
 
 | 8 | #define _ADSHLP_ | 
 
 
 
 
 | 9 |  | 
 
 
 
 
 | 10 | #ifdef __cplusplus | 
 
 
 
 
 | 11 | extern "C" { | 
 
 
 
 
 | 12 | #endif | 
 
 
 
 
 | 13 |  | 
 
 
 
 
 | 14 | #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP) | 
 
 
 
 
 | 15 | HRESULT WINAPI ADsGetObject (LPCWSTR lpszPathName, REFIID riid, VOID **ppObject); | 
 
 
 
 
 | 16 | HRESULT WINAPI ADsBuildEnumerator (IADsContainer *pADsContainer, IEnumVARIANT **ppEnumVariant); | 
 
 
 
 
 | 17 | HRESULT WINAPI ADsFreeEnumerator (IEnumVARIANT *pEnumVariant); | 
 
 
 
 
 | 18 | HRESULT WINAPI ADsEnumerateNext (IEnumVARIANT *pEnumVariant, ULONG cElements, VARIANT *pvar, ULONG *pcElementsFetched); | 
 
 
 
 
 | 19 | HRESULT WINAPI ADsBuildVarArrayStr (LPWSTR *lppPathNames, DWORD dwPathNames, VARIANT *pVar); | 
 
 
 
 
 | 20 | HRESULT WINAPI ADsBuildVarArrayInt (LPDWORD lpdwObjectTypes, DWORD dwObjectTypes, VARIANT *pVar); | 
 
 
 
 
 | 21 | HRESULT WINAPI ADsOpenObject (LPCWSTR lpszPathName, LPCWSTR lpszUserName, LPCWSTR lpszPassword, DWORD dwReserved, REFIID riid, void **ppObject); | 
 
 
 
 
 | 22 | HRESULT WINAPI ADsGetLastError (LPDWORD lpError, LPWSTR lpErrorBuf, DWORD dwErrorBufLen, LPWSTR lpNameBuf, DWORD dwNameBufLen); | 
 
 
 
 
 | 23 | VOID WINAPI ADsSetLastError (DWORD dwErr, LPCWSTR pszError, LPCWSTR pszProvider); | 
 
 
 
 
 | 24 | VOID WINAPI ADsFreeAllErrorRecords (VOID); | 
 
 
 
 
 | 25 | LPVOID WINAPI AllocADsMem (DWORD cb); | 
 
 
 
 
 | 26 | WINBOOL WINAPI FreeADsMem (LPVOID pMem); | 
 
 
 
 
 | 27 | LPVOID WINAPI ReallocADsMem (LPVOID pOldMem, DWORD cbOld, DWORD cbNew); | 
 
 
 
 
 | 28 | LPWSTR WINAPI AllocADsStr (LPCWSTR pStr); | 
 
 
 
 
 | 29 | WINBOOL WINAPI FreeADsStr (LPWSTR pStr); | 
 
 
 
 
 | 30 | WINBOOL WINAPI ReallocADsStr (LPWSTR *ppStr, LPWSTR pStr); | 
 
 
 
 
 | 31 | HRESULT WINAPI ADsEncodeBinaryData (PBYTE pbSrcData, DWORD dwSrcLen, LPWSTR *ppszDestData); | 
 
 
 
 
 | 32 | HRESULT WINAPI ADsDecodeBinaryData (LPCWSTR szSrcData, PBYTE *ppbDestData, ULONG *pdwDestLen); | 
 
 
 
 
 | 33 | HRESULT WINAPI PropVariantToAdsType (VARIANT *pVariant, DWORD dwNumVariant, PADSVALUE *ppAdsValues, PDWORD pdwNumValues); | 
 
 
 
 
 | 34 | HRESULT WINAPI AdsTypeToPropVariant (PADSVALUE pAdsValues, DWORD dwNumValues, VARIANT *pVariant); | 
 
 
 
 
 | 35 | void WINAPI AdsFreeAdsValues (PADSVALUE pAdsValues, DWORD dwNumValues); | 
 
 
 
 
 | 36 | HRESULT WINAPI BinarySDToSecurityDescriptor (PSECURITY_DESCRIPTOR pSecurityDescriptor, VARIANT *pVarsec, LPCWSTR pszServerName, LPCWSTR userName, LPCWSTR passWord, DWORD dwFlags); | 
 
 
 
 
 | 37 | HRESULT WINAPI SecurityDescriptorToBinarySD (VARIANT vVarSecDes, PSECURITY_DESCRIPTOR *ppSecurityDescriptor, PDWORD pdwSDLength, LPCWSTR pszServerName, LPCWSTR userName, LPCWSTR passWord, DWORD dwFlags); | 
 
 
 
 
 | 38 |  | 
 
 
 
 
 | 39 | #define InitADsMem() | 
 
 
 
 
 | 40 | #define AssertADsMemLeaks() | 
 
 
 
 
 | 41 | #define DumpMemoryTracker() | 
 
 
 
 
 | 42 | #endif | 
 
 
 
 
 | 43 |  | 
 
 
 
 
 | 44 | #ifdef __cplusplus | 
 
 
 
 
 | 45 | } | 
 
 
 
 
 | 46 | #endif | 
 
 
 
 
 | 47 | #endif |