IWSDiscoveryProvider::SearchByType 方法 (wsddisco.h)

按设备类型初始化 对 WS-Discovery 主机的搜索。

语法

HRESULT SearchByType(
  [in, optional] const WSD_NAME_LIST *pTypesList,
  [in, optional] const WSD_URI_LIST  *pScopesList,
  [in, optional] LPCWSTR             pszMatchBy,
  [in, optional] LPCWSTR             pszTag
);

参数

[in, optional] pTypesList

指向 WSD_NAME_LIST 结构的指针,该结构表示要搜索的发现提供程序类型列表。 可能为 NULL

[in, optional] pScopesList

指向 WSD_URI_LIST 结构的指针,该结构表示要搜索的发现提供程序范围的列表。 可能为 NULL

[in, optional] pszMatchBy

用于范围的匹配规则。 可能为 NULL

[in, optional] pszTag

此搜索的可选标识符标记。 可能为 NULL

返回值

可能的返回值包括但不限于以下内容:

返回代码 说明
S_OK
方法已成功完成。
E_INVALIDARG
pszMatchBy 的字符长度超过 WSD_MAX_TEXT_LENGTH (8192) 或 pszTag 的字符长度超过 WSD_MAX_TEXT_LENGTH (8192) 。
E_ABORT
尚未附加回调接口。 在调用此方法之前,必须调用 Attach
E_OUTOFMEMORY
内存不足,无法执行操作。

注解

SearchByType 会启动 WS-Discovery 探测 ,以尝试查找符合所提供的条件的发现主机。 此方法允许按类型、范围、两者的某种组合进行匹配,或者在) 未提供作用域或类型时匹配所有支持发现的设备 (。

仅当并且仅当也提供了 pScopesList 时,才应提供 pszMatchBy。 此调用可能会导致一个或多个 Add 回调。 如果在搜索完成之前发出了任何 Add 回调,则将发出 SearchComplete 回调;否则,将发出 SearchFailed 回调。

pszTag 是用户提供的可选字符串,它将在任一回调中反馈,使调用方能够将回调与原始查询相关联。

有关对调用此方法的应用程序进行故障排除的信息,请参阅 WSDAPI 应用程序疑难解答

要求

要求
最低受支持的客户端 Windows Vista [仅限桌面应用]
最低受支持的服务器 Windows Server 2008 [仅限桌面应用]
目标平台 Windows
标头 wsddisco.h (包括 Wsdapi.h)
DLL Wsdapi.dll

另请参阅

IWSDiscoveryProvider