Classe ActivationFactory
Permite que uma ou mais classes a ser ativadas por Tempo de Execução do Windows.
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
A interface de zeroth.I1
A primeira interface.I2
A segunda interface.
Comentários
ActivationFactory fornece métodos do registro e a funcionalidade básica para a interface de IActivationFactory.ActivationFactory também permite que você fornecer uma implementação personalizada de fábrica.
O fragmento de código a seguir ilustra simbolicamente como 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);
O fragmento de código a seguir mostra como usar a estrutura de Implementa para especificar mais de três IDs da interface.
struct MyFactory : ActivationFactory<Implements<I1, I2, I3>, I4, I5>;
Membros
Construtores Públicos
Nome |
Descrição |
---|---|
Inicializa a classe de ActivationFactory. |
Métodos Públicos
Nome |
Descrição |
---|---|
Sai contagem de referência do objeto atual de ActivationFactory. |
|
Recupera uma matriz de IDs implementados da interface. |
|
Obtém o nome da classe em tempo de execução do objeto que o ActivationFactory cria uma instância atual. |
|
Obtém o nível de confiança do objeto que o ActivationFactory cria uma instância atual. |
|
Recupera um ponteiro para a interface especificada. |
|
Diminui a contagem de referência de objeto atual de ActivationFactory. |
Hierarquia de Herança
I0
ChainInterfaces
I0
RuntimeClassBase
ImplementsHelper
DontUseNewUseMake
RuntimeClassFlags
RuntimeClassBaseT
RuntimeClass
ActivationFactory
Requisitos
Cabeçalho: module.h
Namespace: Microsoft::WRL