Métodos de propiedad IADsClass
Los métodos de propiedad de la interfaz IADsClass obtienen o establecen las siguientes propiedades. Para obtener más información, vea Métodos de propiedad de interfaz.
Propiedades
-
Resumen
-
-
Tipo de acceso: lectura/escritura
-
Tipo de datos de scripting: BOOLEAN
-
// C++ method syntax HRESULT get_Abstract( [out] BOOLEAN* pbAbstract ); HRESULT put_Abstract( [in] BOOLEAN bAbstract );
Valor booleano que indica si esta clase es Abstract o no abstracta. Cuando es TRUE, esta clase es una clase abstracta y no se puede crear una instancia directa en el servicio de directorio. Las clases abstractas solo se pueden usar como superclases.
-
-
AuxDerivedFrom
-
-
Tipo de acceso: lectura/escritura
-
Tipo de datos de scripting: VARIANT
-
// C++ method syntax HRESULT get_AuxDerivedFrom( [out] VARIANT* pvAuxDerivedFrom ); HRESULT put_AuxDerivedFrom( [in] VARIANT vAuxDerivedFrom );
Matriz de cadenas de ADsPath que indican las clases super Auxiliares de las que deriva esta clase.
-
-
Auxiliar
-
-
Tipo de acceso: lectura/escritura
-
Tipo de datos de scripting: BOOLEAN
-
// C++ method syntax HRESULT get_Auxiliary( [out] BOOLEAN* pbAuxiliary ); HRESULT put_Auxiliary( [in] BOOLEAN bAuxiliary );
Valor booleano que indica si esta clase es Auxiliar o no. Cuando es TRUE, esta clase es una clase Auxiliar y no se puede crear una instancia directa en el servicio de directorio. Las clases auxiliares solo se pueden usar como superclases de otras clases Auxiliares o como origen de propiedades adicionales en clases estructurales.
-
-
CLSID
-
-
Tipo de acceso: lectura/escritura
-
Tipo de datos de scripting: BSTR
-
// C++ method syntax HRESULT get_CLSID( [out] BSTR* pbstrCLSID ); HRESULT put_CLSID( [in] BSTR bstrCLSID );
CLSID específico del proveedor opcional que identifica el objeto COM que implementa esta clase.
-
-
Contenedor
-
-
Tipo de acceso: lectura/escritura
-
Tipo de datos de scripting: BOOLEAN
-
// C++ method syntax HRESULT get_Container( [out] BOOLEAN* pbContainer ); HRESULT put_Container( [in] BOOLEAN bContainer );
Valor booleano que indica si esta clase puede ser un contenedor de otras clases de objeto. Si este valor es TRUE, puede llamar al método get_Container para obtener una matriz de las clases de objeto que puede contener esta clase.
-
-
Contención
-
-
Tipo de acceso: lectura/escritura
-
Tipo de datos de scripting: VARIANT
-
// C++ method syntax HRESULT get_Containment( [out] VARIANT* pvContainment ); HRESULT put_Containment( [in] VARIANT vContainment );
Matriz BSTR en la que cada elemento es el nombre de una clase de objeto que esta clase puede contener.
-
-
DerivedFrom
-
-
Tipo de acceso: lectura/escritura
-
Tipo de datos de scripting: VARIANT
-
// C++ method syntax HRESULT get_DerivedFrom( [out] VARIANT* pvDerivedFrom ); HRESULT put_DerivedFrom( [in] VARIANT vDerivedFrom );
Matriz de cadenas de ADsPath que indican a qué clases se deriva esta clase.
-
-
HelpFileContext
-
-
Tipo de acceso: lectura/escritura
-
Tipo de datos de scripting: long
-
// C++ method syntax HRESULT get_HelpFileContext( [out] long* plHelpContext ); HRESULT put_HelpFileContext( [in] long lHelpContext );
Id. de contexto dentro de HelpFileName donde se puede encontrar información específica para esta clase.
-
-
HelpFileName
-
-
Tipo de acceso: lectura/escritura
-
Tipo de datos de scripting: BSTR
-
// C++ method syntax HRESULT get_HelpFileName( [out] BSTR* pbstrHelpFileName ); HRESULT put_HelpFileName( [in] BSTR bstrHelpFileName );
Nombre de un archivo de ayuda que contiene más información sobre los objetos de esta clase.
-
-
MandatoryProperties
-
-
Tipo de acceso: lectura/escritura
-
Tipo de datos de scripting: VARIANT
-
// C++ method syntax HRESULT get_MandatoryProperties( [out] VARIANT* pvarMandatoryProperties ); HRESULT put_MandatoryProperties( [in] VARIANT varMandatoryProperties );
SAFEARRAY de VARIANTs que enumera las propiedades que se deben establecer para que esta clase se escriba en el almacenamiento. Si la clase solo contiene una propiedad, get_MandatoryProperties devolverá un BSTR.
-
-
NamingProperties
-
-
Tipo de acceso: lectura/escritura
-
Tipo de datos de scripting: VARIANT
-
// C++ method syntax HRESULT get_NamingProperties( [out] VARIANT* pvarNamingProperties ); HRESULT put_NamingProperties( [in] VARIANT varNamingProperties );
SAFEARRAY de BSTRs que enumera las propiedades usadas para asignar un nombre a los atributos de esta clase de esquema.
-
-
OID
-
-
Tipo de acceso: lectura/escritura
-
Tipo de datos de scripting: BSTR
-
// C++ method syntax HRESULT get_OID( [out] BSTR* pbstrOID ); HRESULT put_OID( [in] BSTR bstrOID );
Identificador de objeto específico del proveedor que define esta clase. Esto se proporciona para permitir la extensión de esquema, mediante Active Directory, en los servicios de directorio que requieren OID específicos del proveedor para las clases.
-
-
OptionalProperties
-
-
Tipo de acceso: lectura/escritura
-
Tipo de datos de scripting: VARIANT
-
// C++ method syntax HRESULT get_OptionalProperties( [out] VARIANT* pvarOptionalProperties ); HRESULT put_OptionalProperties( [in] VARIANT varOptionalProperties );
SAFEARRAY de VARIANTs que enumera las propiedades opcionales de esta clase de esquema. Si la clase solo contiene una propiedad, get_OptionalProperties devolverá un BSTR.
-
-
PossibleSuperiors
-
-
Tipo de acceso: lectura/escritura
-
Tipo de datos de scripting: VARIANT
-
// C++ method syntax HRESULT get_PossibleSuperiors( [out] VARIANT* pvSuperiors ); HRESULT put_PossibleSuperiors( [in] VARIANT vSuperiors );
Matriz de cadenas de ADsPath que indican las clases de esquema que pueden contener instancias de esta clase.
-
-
PrimaryInterface
-
-
Tipo de acceso: solo lectura
-
Tipo de datos de scripting: BSTR
-
// C++ method syntax HRESULT get_PrimaryInterface( [out] BSTR* pbstrGUID );
GUID de identificador específico del proveedor opcional que asocia una interfaz a objetos de esta clase de esquema. Por ejemplo, la clase "User" que admite IADsUser y PrimaryInterface se identifica mediante IID_IADsUser. Debe estar en el formato de cadena estándar de un GUID, tal y como se define en COM. Este GUID es el valor que aparece en la propiedad IADs::get_GUID en instancias de esta clase para proveedores que implementan esta propiedad. La identificación de una clase de esquema por IID de la interfaz principal del código de clase permite el uso de QueryInterface en tiempo de ejecución para determinar si un objeto es de la clase deseada.
-
Ejemplos
En el ejemplo de código siguiente se muestra cómo usar la interfaz IADsClass para determinar si un objeto puede ser un contenedor y, si es así, enumera los nombres de cualquier objeto contenido.
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
En el ejemplo de código siguiente se muestra cómo usar la interfaz IADsClass para determinar si un objeto puede ser un contenedor y, si es así, enumera los nombres de cualquier objeto contenido.
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();
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible |
Windows Vista |
Servidor mínimo compatible |
Windows Server 2008 |
Encabezado |
|
Archivo DLL |
|
IID |
IID_IADsClass se define como C8F93DD0-4AE0-11CF-9E73-00AA004A5691 |