NdfRepairIncident 函数 (ndfapi.h)

NdfRepairIncident 函数修复事件而不显示用户界面。

语法

void NdfRepairIncident(
  [in] NDFHANDLE    Handle,
  [in] RepairInfoEx *RepairEx,
       DWORD        dwWait
);

参数

[in] Handle

类型: NDFHANDLE

网络诊断框架事件的句柄。 此句柄应与传递给 NdfDiagnoseIncident 的句柄匹配。

[in] RepairEx

类型: RepairInfoEx*

结构 (从 NdfDiagnoseIncident) 获取,指示要执行的特定修复。

稍后应释放分配给这些结构的内存。 有关如何执行此操作的示例,请参阅 Microsoft Windows 网络诊断示例。

dwWait

类型:DWORD

终止诊断例程之前等待的时间长度(以毫秒为单位)。 如果不需要超时,可以向此参数传递 INFINITE。

返回值

可能的返回值包括但不限于以下值。

返回代码 说明
S_OK
修复成功。
NDF_E_VALIDATION
修复已成功执行,但 NDF 验证仍发现连接问题。 如果返回此值,则应通过调用 NdfCloseIncident 关闭会话,并创建另一个会话以继续诊断。
E_HANDLE
NDF 事件句柄无效。
WAIT_TIMEOUT
修复操作已终止,因为它所花费的时间超过了 dwWait 中指定的超时时间。
 

如果修复无法执行,则返回其他失败代码。 在这种情况下,客户端可以使用不同的修复再次调用 NdfRepairIncident

注解

仅当 NdfDiagnoseIncident 用于诊断时,才能调用 NdfRepairIncident。 在未显示用户界面或未使用标准 Windows 体验的情况下,通常 (媒体中心和嵌入式应用程序) 。 使用 NdfExecuteDiagnosis 时,不应调用 NdfRepairIncident

在使用此 API 之前,应用程序必须调用事件创建函数(如 NdfCreateWebIncident)来开始 NDF 诊断过程。 然后,应用程序调用 NdfDiagnoseIncident 来诊断问题。 如果诊断进程识别出一些可能的修复,应用程序可以调用 NdfRepairIncident 来修复问题,而无需显示用户界面。 如果应用程序想要取消正在进行的 NdfRepairIncident 调用,可以选择从单独的线程调用 NdfCancelIncident。 最后,应用程序调用 NdfCloseIncident

要求

要求
最低受支持的客户端 Windows 7 [仅限桌面应用]
最低受支持的服务器 Windows Server 2008 R2 [仅限桌面应用]
目标平台 Windows
标头 ndfapi.h
Library Ndfapi.lib
DLL Ndfapi.dll

另请参阅

NdfDiagnoseIncident

RepairInfoEx