如何检查ADuser“;“密码永不过期”;属性检查是否使用C++;Win32API? 我使用C++ Win32 API…< /P>

如何检查ADuser“;“密码永不过期”;属性检查是否使用C++;Win32API? 我使用C++ Win32 API…< /P>,c++,winapi,active-directory,adsi,C++,Winapi,Active Directory,Adsi,我想知道用户密码策略属性值 这就是“密码永不过期”,如何检查这个属性是否使用C++ Win32 API检查? < P>可以使用COM接口IADSUSER。 看 您可以在前面的第一部分使用它来行V_I4(&var)|=ADS_UF_DONT_EXPIRE_PASSWD-如果(V_I4(&var)&ADS_UF_not_EXPIRE_PASSWD){/*选项已启用,则将其替换为。*/} 希望这有帮助。这就是工作:)请查看此…希望它能解决您的问题 WriteLogMessage(“处理:”+UserE

我想知道用户密码策略属性值


这就是“密码永不过期”,如何检查这个属性是否使用C++ Win32 API检查?

< P>可以使用COM接口IADSUSER。 看

您可以在前面的第一部分使用它来行
V_I4(&var)|=ADS_UF_DONT_EXPIRE_PASSWD-如果(V_I4(&var)&ADS_UF_not_EXPIRE_PASSWD){/*选项已启用,则将其替换为
。*/}


希望这有帮助。这就是工作:)

请查看此…希望它能解决您的问题

WriteLogMessage(“处理:”+UserEntry.Name)

如果要使用,请使用第三方工具。它会自动更新您的密码已过期和密码从未过期

                    WriteLogMessage("Max Password Age:" + iMaxPwdAge);

                    //Console.WriteLine("Account control:" + UserEntry.Properties["userAccountcontrol"].Value);

                    int userAccountControl = Convert.ToInt32(UserEntry.Properties["userAccountcontrol"].Value);
                    if ((userAccountControl & ADS_DONT_EXPIRE_PASSWORD) > 0)
                    {
                        WriteLogMessage("Password never expires for:" + UserEntry.Name);
                    }
                    else
                    {
                        WriteLogMessage("Password expiration date found for:" + UserEntry.Name);

                        ActiveDs.IADsUser native = (ActiveDs.IADsUser)UserEntry.NativeObject;

                        DateTime passwordLastChanged = new DateTime(9999, 1, 1);
                        try