mirror of https://github.com/tongzx/nt5src
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.
79 lines
1.5 KiB
79 lines
1.5 KiB
class CNDSProperty : INHERIT_TRACKING,
|
|
public CCoreADsObject,
|
|
public IADsProperty
|
|
{
|
|
public:
|
|
|
|
/* IUnknown methods */
|
|
STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) ;
|
|
DECLARE_STD_REFCOUNTING
|
|
|
|
/* Other methods */
|
|
DECLARE_IDispatch_METHODS
|
|
|
|
DECLARE_IADs_METHODS
|
|
|
|
DECLARE_IADsProperty_METHODS
|
|
|
|
/* Constructors, Destructors, ... */
|
|
CNDSProperty::CNDSProperty();
|
|
|
|
CNDSProperty::~CNDSProperty();
|
|
|
|
static
|
|
HRESULT
|
|
CNDSProperty::CreateProperty(
|
|
BSTR bstrParent,
|
|
BSTR bstrName,
|
|
LPNDS_ATTR_DEF lpAttrDef,
|
|
CCredentials& Credentials,
|
|
DWORD dwObjectState,
|
|
REFIID riid,
|
|
void **ppvObj
|
|
);
|
|
|
|
static
|
|
HRESULT
|
|
CNDSProperty::CreateProperty(
|
|
BSTR bstrParent,
|
|
BSTR bstrName,
|
|
NDS_CONTEXT_HANDLE hADsContext,
|
|
CCredentials& Credentials,
|
|
DWORD dwObjectState,
|
|
REFIID riid,
|
|
void **ppvObj
|
|
);
|
|
|
|
static
|
|
HRESULT
|
|
CNDSProperty::AllocatePropertyObject(
|
|
CNDSProperty **ppProperty
|
|
);
|
|
|
|
protected:
|
|
|
|
CDispatchMgr FAR * _pDispMgr;
|
|
|
|
/* Properties */
|
|
VARIANT _vADsNames;
|
|
VARIANT _vDsNames;
|
|
|
|
BSTR _bstrOID;
|
|
BSTR _bstrSyntax;
|
|
|
|
long _lMaxRange;
|
|
long _lMinRange;
|
|
VARIANT_BOOL _fMultiValued;
|
|
};
|
|
|
|
HRESULT
|
|
MapSyntaxIdtoADsSyntax(
|
|
DWORD dwSyntaxId,
|
|
LPWSTR pszADsSyntax
|
|
);
|
|
|
|
HRESULT
|
|
MapSyntaxIdtoNDSSyntax(
|
|
DWORD dwSyntaxId,
|
|
LPWSTR pszNDSSyntax
|
|
);
|