INetDiagHelper::LowHealth 方法 (ndhelper.h)

LowHealth 方法使帮助程序类扩展能够检查被诊断的组件是否正常。

语法

HRESULT LowHealth(
  [in]  LPCWSTR          pwszInstanceDescription,
  [out] LPWSTR           *ppwszDescription,
  [out] long             *pDeferredTime,
  [out] DIAGNOSIS_STATUS *pStatus
);

参数

[in] pwszInstanceDescription

指向以 null 结尾的字符串的指针,其中包含所诊断信息的用户友好说明。 例如,如果类要诊断 IP 地址的连接问题, 则 pwszInstanceDescription 参数将包含主机名。

[out] ppwszDescription

指向以 null 结尾的字符串的指针,其中包含发现组件不正常时发现的问题的说明。

[out] pDeferredTime

一个指针,指向如果诊断无法立即启动,则延迟的时间(以秒为单位)。 当 pStatus 参数设置为 DS_DEFERRED 时,使用此方法。

[out] pStatus

指向从诊断返回 的DIAGNOSIS_STATUS 的指针。

返回值

返回代码 说明
S_OK
操作成功。
E_OUTOFMEMORY
没有足够的内存可用于完成此操作。
E_INVALIDARG
未正确提供一个或多个参数。
E_ACCESSDENIED
调用方没有足够的权限来执行诊断或修复操作。
E_ABORT
诊断或修复操作已取消。
 

帮助程序类扩展可能会返回特定于函数中遇到的故障的 HRESULTS。

注解

生成帮助程序类扩展时,需要使用 LowHealth 方法。

如果 LowHealth 返回DS_CONFIRMED,ppwszDescription 还将包含诊断结果的用户友好说明。 如果 pStatus 返回DS_DEFERRED,则 out 参数 pDeferredTime 包含此诊断需要延迟 秒数。

确认 LowHealth 时,如果问题可能是由其他组件引起的,还可以选择在 GetLowerHypotheses 方法中为其他帮助程序类生成假设。 如果未确认,NDF 可能会通过调用 HighUtilization 进一步诊断问题。

如果 LowHealth 无法诊断问题,但无法确认组件是否正常,则 LowHealth 也可能返回 DS_INDETERMINATE 。 在这种情况下,如果未确认其他假设,NDF 会将它视为 DS_CONFIRMED

要求

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

另请参阅

INetDiagHelper