启用 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>;
参数
I0
第零个接口。I1
第一个接口 ID。I2
第二个接口 ID。
备注
ActivationFactory 为 IActivationFactory 注册接口提供方法和基本功能。 ActivationFactory 还可以提供自为工厂定义实现。
下面的代码片段演示如何使用标记 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);
下面的代码片段演示如何使用 实现 结构指定多三个接口 ID。
struct MyFactory : ActivationFactory<Implements<I1, I2, I3>, I4, I5>;
成员
公共构造函数
名称 |
说明 |
---|---|
初始化类工厂的实例。 |
公共方法
名称 |
说明 |
---|---|
递增ActivationFactory 当前对象的引用计数。 |
|
检索数组实现的接口 ID。 |
|
获取当前 ActivationFactory 实例化对象的运行时类名。 |
|
获取当前 ActivationFactory 实例化对象的信任级别。 |
|
检索特定接口的指针。 |
|
递减 ActivationFactory 当前对象的引用计数。 |
继承层次结构
I0
ChainInterfaces
I0
RuntimeClassBase
ImplementsHelper
DontUseNewUseMake
RuntimeClassFlags
RuntimeClassBaseT
RuntimeClass
ActivationFactory
要求
标头: module.h
命名空间: Microsoft::WRL