IFunctionDiscoveryProviderFactory::CreateInstance 方法 (functiondiscoveryprovider.h)

[函数发现可用于“要求”部分中指定的操作系统。 它在后续版本中可能已更改或不可用。]

创建函数实例。 应使用此方法创建所有函数实例。 不应使用支持 IFunctionInstance 的其他实现。

语法

HRESULT CreateInstance(
  [in]  const WCHAR                *pszSubCategory,
  [in]  const WCHAR                *pszProviderInstanceIdentity,
  [in]  INT_PTR                    iProviderInstanceContext,
  [in]  IPropertyStore             *pIPropertyStore,
  [in]  IFunctionDiscoveryProvider *pIFunctionDiscoveryProvider,
  [out] IFunctionInstance          **ppIFunctionInstance
);

参数

[in] pszSubCategory

函数实例的子类别字符串。 请参阅 子类别定义

[in] pszProviderInstanceIdentity

提供程序实例标识符。

函数发现使用此标识符来确保 IFunctionInstance::GetID 返回的函数实例标识符是唯一的。 为此,函数发现将前缀附加到传递给 pszProviderInstanceIdentity 的标识符,以确保给定的函数实例标识符在所有提供程序中是唯一的。 实现者只需确保 pszProviderInstanceIdentity 唯一标识提供程序范围内的设备、资源或实例。

此字符串将返回到调用 IFunctionInstance::GetProviderInstanceID 的客户端应用程序。

此字符串的大小没有上限。

[in] iProviderInstanceContext

与特定函数实例关联的上下文。

[in] pIPropertyStore

指向 IPropertyStore 接口的指针。

[in] pIFunctionDiscoveryProvider

指向创建此函数实例的 IFunctionDiscoveryProvider 提供程序实例的指针。

[out] ppIFunctionInstance

指向 IFunctionInstance 接口的 指针。

返回值

如果该方法成功,则返回 S_OK。 否则,将返回 HRESULT 错误代码。

注解

提供程序应指定子类别 (可以为 NULL) 、实例标识符、提供程序分配的上下文 ((如果需要) )和可选的属性存储。

CreateInstance 将适当初始化的函数实例返回给提供程序。

提供程序指定的上下文将传递回所有后续函数实例相关方法的提供程序,例如 InstanceReleasedInstancePropertyStoreOpenInstancePropertyStoreFlushInstanceQueryService

在调用 CreateInstance 时,提供程序必须保证提供程序引用计数不会为零(可能在另一个线程上)。

要求

要求
最低受支持的客户端 Windows Vista [仅限桌面应用]
最低受支持的服务器 Windows Server 2008 [仅限桌面应用]
目标平台 Windows
标头 functiondiscoveryprovider.h

另请参阅

IFunctionDiscoveryProviderFactory