credUIConfirmCredentialsA 函数 (wincred.h)

CredUIConfirmCredentials 函数在 CredUIPromptForCredentialsCredUICmdLinePromptForCredentials 之后调用,以确认已收集的凭据的有效性。 如果CREDUI_FLAGS_EXPECT_CONFIRMATION标志传递给“prompt”函数(CredUIPromptForCredentials 或 CredUICmdLinePromptForCredentials)以及返回NO_ERROR的“prompt”函数,则必须调用 CredUIConfirmCredentials

调用“prompt”函数后,在调用 CredUIConfirmCredentials 之前,调用方必须确定凭据是否实际有效,方法是使用凭据访问 pszTargetName 指定的资源。 验证测试的结果将传递到 bConfirm 参数中的 CredUIConfirmCredentials

语法

CREDUIAPI DWORD CredUIConfirmCredentialsA(
  [in] PCSTR pszTargetName,
  [in] BOOL  bConfirm
);

参数

[in] pszTargetName

指向包含凭据目标名称(通常是域或服务器应用程序名称)的 以 null 结尾的字符串的指针。 此值必须与 pszTargetName 传递给 CredUIPromptForCredentialsCredUICmdLinePromptForCredentials 的值相同

[in] bConfirm

指定从提示函数返回的凭据是否有效。 如果 为 TRUE,则凭据存储在凭据管理器中,由 CredUIPromptForCredentialsCredUICmdLinePromptForCredentials 定义。 如果 为 FALSE,则不会存储凭据,并清理各种内存片段。

返回值

返回操作的状态。 调用方可以检查此状态,以确定凭据确认操作是否成功。 大多数应用程序都忽略此状态代码,因为应用程序已连接到资源。 操作可能会失败,因为凭据未在等待确认的凭据列表中找到,或者尝试写入或删除凭据失败。 在列表中找不到凭据可能会发生,因为凭据从未排队,或者由于排队的凭据过多。 在旧凭据被丢弃之前,最多可以排队五个凭据,因为较新的凭据已排队。

返回代码 描述
NO_ERROR - (零)
确认操作成功。
ERROR_NOT_FOUND
在确认等待列表中找不到主题凭据。
ERROR_INVALID_PARAMETER
尝试确认等待凭据失败,因为凭据包含无效或不一致的数据。

注解

注意

wincred.h 标头将 CredUIConfirmCredentials 定义为别名,该别名根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。 将非中性编码别名与非编码中性代码混合使用可能会导致编译或运行时错误不匹配。 有关详细信息,请参阅 函数原型的约定

要求

   
最低受支持的客户端 Windows XP [仅限桌面应用]
最低受支持的服务器 Windows Server 2003 [仅限桌面应用]
目标平台 Windows
标头 wincred.h
Library Credui.lib
DLL Credui.dll