CredReadA 函数 (wincred.h)
CredRead 函数从用户的凭据集中读取凭据。 使用的凭据集是与当前令牌的登录会话关联的凭据集。 令牌不得禁用用户的 SID。
语法
BOOL CredReadA(
[in] LPCSTR TargetName,
[in] DWORD Type,
[in] DWORD Flags,
[out] PCREDENTIALA *Credential
);
参数
[in] TargetName
指向包含要读取的凭据名称的 null 终止字符串的指针。
[in] Type
要读取的凭据的类型。 类型 必须是CRED_TYPE_* 定义的类型之一。
[in] Flags
当前保留且必须为零。
[out] Credential
指向单个分配块缓冲区的指针以返回凭据。
缓冲区中包含的任何指针都是指向此单个分配块内的位置的指针。 必须通过调用 credFree调用
返回值
该函数返回成功 TRUE,并在失败时 FALSE。 可以调用 GetLastError 函数以获取更具体的状态代码。 可以返回以下状态代码:
- ERROR_NOT_FOUND
指定 TargetName不存在凭据。
- ERROR_NO_SUCH_LOGON_SESSION
登录会话不存在,或者没有与此登录会话关联的凭据集。 网络登录会话没有关联的凭据集。
- ERROR_INVALID_FLAGS
为 标志 参数指定了无效的标志。
言论
如果 Credential 参数指定的 CREDENTIAL 结构的 Type 成员的值 CRED_TYPE_DOMAIN_EXTENDED,则必须在目标名称中指定命名空间。 此函数只能返回指定类型的一个凭据。
注意
wincred.h 标头将 CredRead 定义为一个别名,该别名根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。 将中性编码别名与不中性编码的代码混合使用可能会导致编译或运行时错误不匹配。 有关详细信息,请参阅函数原型的
要求
要求 | 价值 |
---|---|
最低支持的客户端 | Windows XP [仅限桌面应用] |
支持的最低服务器 | Windows Server 2003 [仅限桌面应用] |
目标平台 | 窗户 |
标头 | wincred.h |
库 | Advapi32.lib |
DLL | Advapi32.dll |