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.

77 lines
2.2 KiB

  1. #if !defined(AFX_USERLIST_H__3A1CD0AB_4FC3_11D1_BB5D_00A0C906345D__INCLUDED_)
  2. #define AFX_USERLIST_H__3A1CD0AB_4FC3_11D1_BB5D_00A0C906345D__INCLUDED_
  3. #if _MSC_VER >= 1000
  4. #pragma once
  5. #endif // _MSC_VER >= 1000
  6. // USERLIST.h : header file
  7. //
  8. #include "users.h"
  9. #include "lmcons.h"
  10. #include "dns.h"
  11. #include "ntdsapi.h"
  12. #include <wincrypt.h>
  13. /////////////////////////////////////////////////////////////////////////////
  14. // USERLIST dialog
  15. class USERLIST : public CDialog
  16. {
  17. // Construction
  18. public:
  19. USERLIST(CWnd* pParent = NULL); // standard constructor
  20. USERLIST(LPCTSTR FileName, CWnd* pParent = NULL);
  21. DWORD ApplyChanges(LPCTSTR FileName);
  22. DWORD AddNewUsers(CUsers &NewUsers);
  23. // Dialog Data
  24. //{{AFX_DATA(USERLIST)
  25. enum { IDD = IDD_ENCRYPT_DETAILS };
  26. CListCtrl m_RecoveryListCtrl;
  27. CListCtrl m_UserListCtrl;
  28. CButton m_AddButton;
  29. CButton m_RemoveButton;
  30. //}}AFX_DATA
  31. // Overrides
  32. // ClassWizard generated virtual function overrides
  33. //{{AFX_VIRTUAL(USERLIST)
  34. protected:
  35. virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
  36. //}}AFX_VIRTUAL
  37. // Implementation
  38. protected:
  39. // Generated message map functions
  40. //{{AFX_MSG(USERLIST)
  41. afx_msg void OnRemove();
  42. virtual void OnCancel();
  43. virtual void OnOK();
  44. virtual BOOL OnInitDialog();
  45. afx_msg void OnAdd();
  46. afx_msg void OnSetfocusListuser(NMHDR* pNMHDR, LRESULT* pResult);
  47. afx_msg void OnKillfocusListuser(NMHDR* pNMHDR, LRESULT* pResult);
  48. afx_msg void OnItemchangedListuser(NMHDR* pNMHDR, LRESULT* pResult);
  49. //}}AFX_MSG
  50. DECLARE_MESSAGE_MAP()
  51. private:
  52. DWORD TryGetBetterNameInCert(PEFS_HASH_BLOB HashData, LPTSTR *UserName);
  53. void SetUpListBox(BOOL *Enable);
  54. void ShowRemove(void);
  55. DWORD GetCertNameFromCertContext(PCCERT_CONTEXT CertContext, LPTSTR * UserDispName);
  56. DWORD CertInStore(HCERTSTORE *pStores, DWORD StoreNum, PCCERT_CONTEXT selectedCert);
  57. CString m_FileName;
  58. CUsers m_Users;
  59. CUsers m_Recs;
  60. LONG m_CurrentUsers;
  61. CERT_CHAIN_PARA m_CertChainPara;
  62. };
  63. //{{AFX_INSERT_LOCATION}}
  64. // Microsoft Developer Studio will insert additional declarations immediately before the previous line.
  65. #endif // !defined(AFX_USERLIST_H__3A1CD0AB_4FC3_11D1_BB5D_00A0C906345D__INCLUDED_)