我使用LogonUser来validation凭据。 在Windows 7电脑上,如果失败,用户可能需要等待30秒才能返回。 这在XP上不会发生 – 函数返回非常快。 这是我的代码:
HANDLE hToken; bool bSuccess = LogonUser(StringUserName, "MyDomain", StringPassword, LOGON32_LOGON_INTERACTIVE, LOGON32_PROVIDER_DEFAULT, &hToken);
我不知道Windows的特定API是如何处理这个问题的,但通常认为在登录凭据不好的情况下不要立即返回,以避免暴力攻击。 我可以想象Windows自WinXP以来增加了这个功能。