| 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 |