ActivationFactory (clase)
Habilita una o más clases que activa Windows en tiempo de ejecución.
Sintaxis
template <
typename I0 = Details::Nil,
typename I1 = Details::Nil,
typename I2 = Details::Nil
>
class ActivationFactory :
public Details::RuntimeClass<
typename Details::InterfaceListHelper<
IActivationFactory,
I0,
I1,
I2,
Details::Nil
>::TypeT,
RuntimeClassFlags<WinRt | InhibitWeakReference>,
false
>;
Parámetros
I0
La interfaz cero.
I1
La primera interfaz.
I2
La segunda interfaz.
Comentarios
ActivationFactory
proporciona métodos de registro y funcionalidad básica para la interfaz IActivationFactory
. ActivationFactory
también le permite proporcionar una implementación de generador personalizada.
El siguiente fragmento de código ilustra simbólicamente cómo usar ActivationFactory.
struct MyClassFactory : public ActivationFactory<IMyAddtionalInterfaceOnFactory>
{
STDMETHOD(ActivateInstance) (_Outptr_result_nullonfailure_ IInspectable** ppvObject)
{
// my custom implementation
return S_OK;
}
};
ActivatableClassWithFactory(MyClass, MyClassFactory);
// or if a default factory is used:
//ActivatableClassWithFactory(MyClass, SimpleActivationFactory);
En el fragmento de código siguiente se muestra cómo usar la estructura Implements para especificar más de tres identificadores de interfaz.
struct MyFactory : ActivationFactory<Implements<I1, I2, I3>, I4, I5>;
Miembros
Constructores públicos
Nombre | Descripción |
---|---|
ActivationFactory::ActivationFactory | Inicializa la clase ActivationFactory . |
Métodos públicos
Nombre | Descripción |
---|---|
ActivationFactory::AddRef | Incrementa el recuento de referencias del objeto ActivationFactory actual. |
ActivationFactory::GetIids | Recupera una matriz de identificadores de interfaz implementados. |
ActivationFactory::GetRuntimeClassName | Obtiene el nombre de la clase del entorno de ejecución del objeto del que ActivationFactory crea una instancia actual. |
ActivationFactory::GetTrustLevel | Obtiene el nivel de confianza del objeto del que ActivationFactory crea una instancia actual. |
ActivationFactory::QueryInterface | Recupera un puntero a la interfaz especificada. |
ActivationFactory::Release | Disminuye el recuento de referencias del objeto ActivationFactory actual. |
Jerarquía de herencia
I0
ChainInterfaces
I0
RuntimeClassBase
ImplementsHelper
DontUseNewUseMake
RuntimeClassFlags
RuntimeClassBaseT
RuntimeClass
ActivationFactory
Requisitos
Encabezado: module.h
Espacio de nombres: Microsoft::WRL
ActivationFactory::ActivationFactory
Inicializa la clase ActivationFactory
.
ActivationFactory();
ActivationFactory::AddRef
Incrementa el recuento de referencias del objeto ActivationFactory
actual.
STDMETHOD_(
ULONG,
AddRef
)();
Valor devuelto
S_OK si se realiza correctamente; de lo contrario, un HRESULT que describe el error.
ActivationFactory::GetIids
Recupera una matriz de identificadores de interfaz implementados.
STDMETHOD(
GetIids
)(_Out_ ULONG *iidCount, _Deref_out_ _Deref_post_cap_(*iidCount) IID **iids);
Parámetros
iidCount
Cuando se completa esta operación, el número de identificadores de interfaz de la matriz iids .
iids
Cuando se completa esta operación, una matriz de identificadores de interfaz implementados.
Valor devuelto
S_OK si se realiza correctamente; de lo contrario, un HRESULT que describe el error. E_OUTOFMEMORY es un posible error HRESULT.
ActivationFactory::GetRuntimeClassName
Obtiene el nombre de la clase del entorno de ejecución del objeto del que ActivationFactory
crea una instancia actual.
STDMETHOD(
GetRuntimeClassName
)(_Out_ HSTRING* runtimeName);
Parámetros
runtimeName
Cuando se completa esta operación, un identificador de una cadena que contiene el nombre de clase del entorno de ejecución del objeto del que ActivationFactory
crea la instancia actual.
Valor devuelto
S_OK si se realiza correctamente; de lo contrario, un HRESULT que describe el error.
ActivationFactory::GetTrustLevel
Obtiene el nivel de confianza del objeto del que ActivationFactory
crea una instancia actual.
STDMETHOD(
GetTrustLevel
)(_Out_ TrustLevel* trustLvl);
Parámetros
trustLvl
Una vez completada esta operación, el nivel de confianza de la clase del entorno de ejecución de la que ActivationFactory
crea una instancia.
Valor devuelto
S_OK si se realiza correctamente; de lo contrario, se emite un error de aserción y trustLvl se establece en FullTrust
.
ActivationFactory::QueryInterface
Recupera un puntero a la interfaz especificada.
STDMETHOD(
QueryInterface
)(REFIID riid, _Deref_out_ void **ppvObject);
Parámetros
riid
Id. de interfaz.
ppvObject
Una vez completada esta operación, un puntero a la interfaz especificada por el parámetro riid.
Valor devuelto
S_OK si se realiza correctamente; de lo contrario, un HRESULT que describe el error.
ActivationFactory::Release
Disminuye el recuento de referencias del objeto ActivationFactory
actual.
STDMETHOD_(
ULONG,
Release
)();
Valor devuelto
S_OK si se realiza correctamente; de lo contrario, un HRESULT que describe el error.