-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathADDomain.h
98 lines (85 loc) · 2.53 KB
/
ADDomain.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
#include "StdAfx.h"
#include <vector>
using namespace std;
#include "ADObject.h"
class ADUser;
class ADGroup;
class ADComputer;
class ADOU;
class ADShareFolder;
class ADACE;
class ADEntry;
class ADEntryForTrustInfo;
class ADDotReader;
class CMyShape;
class ADDomain : public ADObject
{
DECLARE_SERIAL(ADDomain)
public:
CString dNSName;
CString dnName;
CString netBIOSName;
CString forestName;
CString siteName;
CString dcName;
CString dcDNSName;
CString dcAddress;
CString userName;
CString passWord;
vector<ADEntryForTrustInfo*> trustInfos;
vector<ADDomain*> globalDomains;
vector<ADUser*> users;
vector<ADGroup*> groups;
ADGroup* everyone;
vector<ADComputer*> computers;
vector<ADOU*> ous;
vector<ADUser*> g_users;
vector<ADGroup*> g_groups;
vector<ADComputer*> g_computers;
vector<ADOU*> g_ous;
vector<ADShareFolder*> g_shareFolders;
vector<ADACE*> g_ADACEs;
CRect rectGUI;
CMyShape *shape;
public:
ADDomain();
void Serialize(CArchive &ar);
ADDomain(CString a_dcName, CString a_userName, CString a_passWord);
~ADDomain();
CString getDCNameFromDNSName(CString strDNSName);
BOOL checkIP(CString strIP);
int getDomainInfo(CString strDCName);
void getTrustInfo();
void getUsers();
void getComputers();
ADUser* addUser(CString strUserName, CString strDNName);
ADGroup* addGroup(CString strGroupName, CString strDNName, ADDomain* domain, CString strType);
ADComputer* addComputer(CString strComputerName, CString strDNName, ADDomain* domain);
ADOU* addOU(CString strOUName, CString strDNName, ADDomain* domain);
ADOU* findOU(CString strOUName, CString strDNName);
void performEntry(ADEntry* entry);
void performEntries(vector<ADEntry*> entries);
void getAndPerformEntries();
vector<ADUser*> getAllUsers();
vector<ADGroup*> getAllGroups();
vector<ADComputer*> getAllComputers();
vector<ADOU*> getAllOUs();
vector<ADShareFolder*> getAllShareFolders();
void connectFolderWithACEs();
vector<ADACE*> getAllACEs(int iMixOrShareOrNTFS);
void refreshDCName();
void refreshAllShareFolderInfos();
void clarifyAllGroupsAndUsers();
void updateComputerCNs();
void addToProperties();
ADGroup* findGlobalGroupByDN(CString strGroupDNName);
ADUser* findGlobalUserByDN(CString strUserDNName);
void refreshAllGroupMembers(BOOL bDisplay = TRUE);
void refreshAllGroupMembers_LoadMode(BOOL bDisplay = TRUE);
CString Node2String();
CString Edge2String();
void parseGUIData(ADDotReader *reader);
void generateLink(ADDotReader *reader);
void setConsoleText(CString strText);
void setGlobalDomains(vector<ADDomain*> a_globalDomains);
};