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.

64 lines
1.7 KiB

  1. //+---------------------------------------------------------------------------
  2. //
  3. // Microsoft Windows
  4. // Copyright (C) Microsoft Corporation 1996-2001.
  5. //
  6. // File: getuser.h
  7. //
  8. // Contents: definition of CGetUser
  9. //
  10. //----------------------------------------------------------------------------
  11. #ifndef GETUSER_H
  12. #define GETUSER_H
  13. #define SCE_SHOW_USERS 0x1
  14. #define SCE_SHOW_GROUPS 0x2
  15. #define SCE_SHOW_ALIASES 0x4
  16. #define SCE_SHOW_ALL 0x7
  17. #define SCE_SHOW_LOCALONLY 0x8
  18. #define SCE_SHOW_DOMAINGROUPS 0x10
  19. #define SCE_SHOW_SINGLESEL 0x20
  20. #define SCE_SHOW_BUILTIN 0x40
  21. #define SCE_SHOW_WELLKNOWN 0x80
  22. #define SCE_SHOW_GLOBAL 0x100
  23. #define SCE_SHOW_LOCALGROUPS 0x200
  24. #define SCE_SHOW_SCOPE_LOCAL 0x400
  25. #define SCE_SHOW_SCOPE_DOMAIN 0x800
  26. #define SCE_SHOW_SCOPE_DIRECTORY 0x1000
  27. #define SCE_SHOW_SCOPE_ALL (SCE_SHOW_SCOPE_LOCAL|SCE_SHOW_SCOPE_DOMAIN|SCE_SHOW_SCOPE_DIRECTORY)
  28. #define SCE_SHOW_DIFF_MODE_OFF_DC 0x2000
  29. typedef struct _tag_WSCE_ACCOUNTINFO
  30. {
  31. LPTSTR pszName;
  32. SID_NAME_USE sidType;
  33. } WSCE_ACCOUNTINFO, *PWSCE_ACCOUNTINFO;
  34. class CGetUser
  35. {
  36. public:
  37. PSCE_NAME_LIST GetUsers();
  38. BOOL Create(HWND hwnd, DWORD nShowFlag);
  39. CGetUser();
  40. virtual ~CGetUser();
  41. void SetServer( LPCTSTR pszServerName )
  42. { m_pszServerName = pszServerName; };
  43. protected:
  44. HINSTANCE m_hinstNetUI;
  45. PSCE_NAME_LIST m_pNameList;
  46. public:
  47. static SID_NAME_USE
  48. GetAccountType(LPCTSTR pszName);
  49. protected:
  50. LPCTSTR m_pszServerName;
  51. static CTypedPtrArray<CPtrArray, PWSCE_ACCOUNTINFO> m_aKnownAccounts;
  52. };
  53. #endif // GETUSER_H