adshlp.h 2.5 KB

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