Methoden der IADsClass-Eigenschaft
Die Eigenschaftenmethoden der IADsClass-Schnittstelle rufen die folgenden Eigenschaften ab oder legen sie fest. Weitere Informationen finden Sie unter Schnittstelleneigenschaftenmethoden.
Eigenschaften
-
Zusammenfassung
-
-
Zugriffstyp: Lese-/Schreibzugriff
-
Skriptdatentyp: BOOLEAN
-
// C++ method syntax HRESULT get_Abstract( [out] BOOLEAN* pbAbstract ); HRESULT put_Abstract( [in] BOOLEAN bAbstract );
Boolescher Wert, der angibt, ob diese Klasse abstrakt oder nicht abstrakt ist. Bei TRUE ist diese Klasse eine Abstrakte Klasse und kann nicht direkt im Verzeichnisdienst instanziiert werden. Abstrakte Klassen können nur als Superklassen verwendet werden.
-
-
AuxDerivedFrom
-
-
Zugriffstyp: Lese-/Schreibzugriff
-
Skriptdatentyp: VARIANT
-
// C++ method syntax HRESULT get_AuxDerivedFrom( [out] VARIANT* pvAuxDerivedFrom ); HRESULT put_AuxDerivedFrom( [in] VARIANT vAuxDerivedFrom );
Array von ADsPath-Zeichenfolgen, die die Superhilfsklassen angeben, von denen diese Klasse abgeleitet wird.
-
-
Hilfs
-
-
Zugriffstyp: Lese-/Schreibzugriff
-
Skriptdatentyp: BOOLEAN
-
// C++ method syntax HRESULT get_Auxiliary( [out] BOOLEAN* pbAuxiliary ); HRESULT put_Auxiliary( [in] BOOLEAN bAuxiliary );
Boolescher Wert, der angibt, ob diese Klasse "Auxiliary" ist. Bei TRUE ist diese Klasse eine Hilfsklasse und kann nicht direkt im Verzeichnisdienst instanziiert werden. Hilfsklassen können nur als Superklassen anderer Hilfsklassen oder als Quelle zusätzlicher Eigenschaften für Strukturklassen verwendet werden.
-
-
CLSID
-
-
Zugriffstyp: Lese-/Schreibzugriff
-
Skriptdatentyp: BSTR
-
// C++ method syntax HRESULT get_CLSID( [out] BSTR* pbstrCLSID ); HRESULT put_CLSID( [in] BSTR bstrCLSID );
Optionale anbieterspezifische CLSID, die das COM-Objekt identifiziert, das diese Klasse implementiert.
-
-
Container
-
-
Zugriffstyp: Lese-/Schreibzugriff
-
Skriptdatentyp: BOOLEAN
-
// C++ method syntax HRESULT get_Container( [out] BOOLEAN* pbContainer ); HRESULT put_Container( [in] BOOLEAN bContainer );
Boolescher Wert, der angibt, ob diese Klasse ein Container anderer Objektklassen sein kann. Wenn dieser Wert TRUE ist, können Sie die get_Container-Methode aufrufen, um ein Array der Objektklassen abzurufen, die diese Klasse enthalten kann.
-
-
Containment
-
-
Zugriffstyp: Lese-/Schreibzugriff
-
Skriptdatentyp: VARIANT
-
// C++ method syntax HRESULT get_Containment( [out] VARIANT* pvContainment ); HRESULT put_Containment( [in] VARIANT vContainment );
Ein BSTR-Array , in dem jedes Element der Name einer Objektklasse ist, die diese Klasse enthalten kann.
-
-
DerivedFrom
-
-
Zugriffstyp: Lese-/Schreibzugriff
-
Skriptdatentyp: VARIANT
-
// C++ method syntax HRESULT get_DerivedFrom( [out] VARIANT* pvDerivedFrom ); HRESULT put_DerivedFrom( [in] VARIANT vDerivedFrom );
Array von ADsPath-Zeichenfolgen, die angeben, von welchen Klassen diese Klasse abgeleitet wurde.
-
-
HelpFileContext
-
-
Zugriffstyp: Lese-/Schreibzugriff
-
Skriptdatentyp: long
-
// C++ method syntax HRESULT get_HelpFileContext( [out] long* plHelpContext ); HRESULT put_HelpFileContext( [in] long lHelpContext );
Kontext-ID in HelpFileName , in der spezifische Informationen für diese Klasse gefunden werden können.
-
-
HelpFileName
-
-
Zugriffstyp: Lese-/Schreibzugriff
-
Skriptdatentyp: BSTR
-
// C++ method syntax HRESULT get_HelpFileName( [out] BSTR* pbstrHelpFileName ); HRESULT put_HelpFileName( [in] BSTR bstrHelpFileName );
Name einer Hilfedatei, die weitere Informationen zu Objekten dieser Klasse enthält.
-
-
Obligatorische Eigenschaften
-
-
Zugriffstyp: Lese-/Schreibzugriff
-
Skriptdatentyp: VARIANT
-
// C++ method syntax HRESULT get_MandatoryProperties( [out] VARIANT* pvarMandatoryProperties ); HRESULT put_MandatoryProperties( [in] VARIANT varMandatoryProperties );
SAFEARRAY von VARIANTs, das die Eigenschaften auflistet, die festgelegt werden müssen, damit diese Klasse in den Speicher geschrieben werden soll. Wenn die Klasse nur eine Eigenschaft enthält, gibt get_MandatoryProperties einen BSTR zurück.
-
-
NamingProperties
-
-
Zugriffstyp: Lese-/Schreibzugriff
-
Skriptdatentyp: VARIANT
-
// C++ method syntax HRESULT get_NamingProperties( [out] VARIANT* pvarNamingProperties ); HRESULT put_NamingProperties( [in] VARIANT varNamingProperties );
SAFEARRAY von BSTRs, das die Eigenschaften auflistet, die zum Benennen von Attributen dieser Schemaklasse verwendet werden.
-
-
OID
-
-
Zugriffstyp: Lese-/Schreibzugriff
-
Skriptdatentyp: BSTR
-
// C++ method syntax HRESULT get_OID( [out] BSTR* pbstrOID ); HRESULT put_OID( [in] BSTR bstrOID );
Anbieterspezifischer Objektbezeichner, der diese Klasse definiert. Dies wird bereitgestellt, um die Schemaerweiterung mithilfe von Active Directory in Verzeichnisdiensten zuzulassen, die anbieterspezifische OIDs für Klassen erfordern.
-
-
OptionalEigenschaften
-
-
Zugriffstyp: Lese-/Schreibzugriff
-
Skriptdatentyp: VARIANT
-
// C++ method syntax HRESULT get_OptionalProperties( [out] VARIANT* pvarOptionalProperties ); HRESULT put_OptionalProperties( [in] VARIANT varOptionalProperties );
SAFEARRAY von VARIANTs, das die optionalen Eigenschaften für diese Schemaklasse auflistet. Wenn die Klasse nur eine Eigenschaft enthält, gibt get_OptionalProperties einen BSTR zurück.
-
-
PossibleSuperiors
-
-
Zugriffstyp: Lese-/Schreibzugriff
-
Skriptdatentyp: VARIANT
-
// C++ method syntax HRESULT get_PossibleSuperiors( [out] VARIANT* pvSuperiors ); HRESULT put_PossibleSuperiors( [in] VARIANT vSuperiors );
Array von ADsPath-Zeichenfolgen, die die Schemaklassen angeben, die Instanzen dieser Klasse enthalten können.
-
-
PrimaryInterface
-
-
Zugriffstyp: Schreibgeschützt
-
Skriptdatentyp: BSTR
-
// C++ method syntax HRESULT get_PrimaryInterface( [out] BSTR* pbstrGUID );
Optionale anbieterspezifische Bezeichner-GUID, die Objekten dieser Schemaklasse eine Schnittstelle zuordnet. Beispielsweise wird die Klasse "User", die IADsUser und PrimaryInterface unterstützt, durch IID_IADsUser identifiziert. Dies muss im Standardzeichenfolgenformat einer GUID vorliegen, wie von COM definiert. Diese GUID ist der Wert, der in der IADs::get_GUID-Eigenschaft in Instanzen dieser Klasse für Anbieter angezeigt wird, die diese Eigenschaft implementieren. Das Identifizieren einer Schemaklasse durch IID der primären Schnittstelle des Klassencodes ermöglicht die Verwendung von QueryInterface zur Laufzeit, um zu bestimmen, ob ein Objekt der gewünschten Klasse ist.
-
Beispiele
Im folgenden Codebeispiel wird gezeigt, wie die IADsClass-Schnittstelle verwendet wird, um zu bestimmen, ob ein Objekt ein Container sein kann, und wenn ja, listet die Namen aller enthaltenen Objekte auf.
Dim ads As IADs
Dim cls As IADsClass
On Error GoTo Cleanup
Set ads = GetObject("WinNT://myComputer,computer")
Set cls = GetObject(ads.Schema)
if cls.Container = True Then
MsgBox "This object contains the following children:"
For Each o In cls.Containment
MsgBox o
Next
End If
Cleanup:
If (Err.Number<>0) Then
MsgBox("An error has occurred. " & Err.Number)
End If
Set ads = Nothing
Set cls = Nothing
Im folgenden Codebeispiel wird gezeigt, wie die IADsClass-Schnittstelle verwendet wird, um zu bestimmen, ob ein Objekt ein Container sein kann, und wenn ja, listet die Namen aller enthaltenen Objekte auf.
HRESULT hr = S_OK;
IADsClass *pCls = NULL;
IADs *pADs = NULL;
BSTR bstrSchema;
VARIANT var;
hr = CoInitialize(NULL);
hr = ADsGetObject(L"WinNT://myComputer,computer",
IID_IADs,
(void**)&pADs);
if (FAILED(hr)) {goto Cleanup;}
hr = pADs->get_Schema(&bstrSchema);
pADs->Release();
if(FAILED(hr)) {goto Cleanup;}
hr = ADsGetObject(bstrSchema, IID_IADsClass, (void**)&pCls);
if(FAILED(hr)) {goto Cleanup;}
VariantInit(&var);
VARIANT_BOOL bCont;
pCls->get_Container(&bCont);
if(bCont != false) {
VariantClear(&var);
pCls->get_Containment(&var);
hr = printVarArray(var);
}
Cleanup:
if(pADs)
pADs->Release();
if(pCls)
pCls->Release();
SysFreeString(bstrSchema);
CoUninitialize();
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) |
Windows Vista |
Unterstützte Mindestversion (Server) |
WindowsServer 2008 |
Header |
|
DLL |
|
IID |
IID_IADsClass ist definiert als C8F93DD0-4AE0-11CF-9E73-00AA004A5691 |