Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

121 lines
2.1 KiB

  1. //+---------------------------------------------------------------------------
  2. //
  3. // Microsoft Windows
  4. // Copyright (C) Microsoft Corporation, 1992 - 1995.
  5. //
  6. // File: oleds.h
  7. //
  8. // Contents: Public header file for all oleds client code
  9. //
  10. // Functions:
  11. //
  12. // History: 25-Oct-94 KrishnaG Created.
  13. //
  14. //----------------------------------------------------------------------------
  15. #ifndef _GRPUT2_
  16. #define _GRPUT2_
  17. #ifdef __cplusplus
  18. extern "C" {
  19. #endif
  20. typedef struct _domain_group_member{
  21. ULONG Type;
  22. ULONG ParentType;
  23. LPWSTR Parent;
  24. LPWSTR Computer;
  25. LPWSTR Domain;
  26. LPWSTR Name;
  27. }DOMAIN_GROUP_MEMBER, *PDOMAIN_GROUP_MEMBER, * LPDOMAIN_GROUP_MEMBER;
  28. typedef struct _ini_dom_group{
  29. LPWSTR szDomainName;
  30. LPWSTR szComputerName;
  31. LPWSTR szGroupName;
  32. LPWSTR szUncCompName;
  33. LPBYTE _pBuffer;
  34. DWORD _dwObjectReturned;
  35. DWORD _dwCurrentObject;
  36. DWORD _dwTotalObjects;
  37. DWORD_PTR _dwResumeHandle;
  38. BOOL _bNoMore;
  39. }INI_DOM_GROUP, *PINI_DOM_GROUP, *LPINI_DOM_GROUP;
  40. BOOL
  41. WinNTGlobalGroupOpen(
  42. LPWSTR szDomainName,
  43. LPWSTR szComputerName,
  44. LPWSTR szGroupName,
  45. PHANDLE phGroup
  46. );
  47. BOOL
  48. WinNTGlobalGroupEnum(
  49. HANDLE hGroup,
  50. DWORD dwRequested,
  51. LPBYTE * ppBuffer,
  52. PDWORD pdwReturned
  53. );
  54. BOOL
  55. WinNTGlobalGroupGetObject(
  56. HANDLE hGroup,
  57. LPDOMAIN_GROUP_MEMBER * ppGroupMember
  58. );
  59. BOOL
  60. WinNTGlobalGroupClose(
  61. HANDLE hGroup
  62. );
  63. void
  64. FreeIniDomGroup(
  65. PINI_DOM_GROUP pIniDomGrp
  66. );
  67. BOOL
  68. ComputeGlobalGroupDataSize(
  69. LPDOMAIN_GROUP_MEMBER * ppGroupMembers,
  70. DWORD dwReturned,
  71. PDWORD pdwSize
  72. );
  73. LPBYTE
  74. CopyIniDomGroupToDomGroup(
  75. LPDOMAIN_GROUP_MEMBER pIntCompGrp,
  76. LPBYTE pExtCompGrp,
  77. LPBYTE pEnd
  78. );
  79. void
  80. FreeIntDomGroup(
  81. LPDOMAIN_GROUP_MEMBER pDomGroupMember
  82. );
  83. BOOL
  84. BuildGlobalGroupMember(
  85. HANDLE hGroup,
  86. LPBYTE lpBuffer,
  87. LPDOMAIN_GROUP_MEMBER * ppGroupMember
  88. );
  89. LPBYTE
  90. PackStrings(
  91. LPWSTR *pSource,
  92. LPBYTE pDest,
  93. DWORD *DestOffsets,
  94. LPBYTE pEnd
  95. );
  96. #ifdef __cplusplus
  97. }
  98. #endif
  99. #endif // _GRPUT2_