我正在使用LogonUser函数(http://msdn.microsoft.com/en-us/library/aa378184(VS.85).aspx)来验证用户身份。但是我发现,如果用户更改了密码(即从Password1更改为Password2),则两个密码都可以正常工作。但是我希望它只能使用当前密码。有没有什么我需要设置才能让它像这样工作?
我正在使用以下代码段:
LogonUser(nt_id, NULL, nt_password, LOGON32_LOGON_NETWORK, 3, &hToken );
nt_id的格式为USER@USERDOMAIN.SOMETHING.COM
并且我有3代替LOGON32_PROVIDER_WINNT50
,因为我会得到一个编译错误,说LOGON32_PROVIDER_WINNT50
的未声明的标识符(这可能是一个症状吗?)但我知道它被定义为3。
谢谢, -Pete
答案 0 :(得分:2)
这是一个网络设置。默认情况下,Windows密码在更改后一小时内仍然有效。如果需要,您的网络管理员可以更改此项(请注意,这不会影响交互式登录,但它确实会影响所有编程方法。)
答案 1 :(得分:1)