0

私はC++ Win32 APIを使用しています...

ユーザーパスワードポリシーのプロパティ値を知りたい...

それは「パスワードの有効期限が切れない」です。このプロパティがチェックされているか、C++ Win32 API を使用していないかを確認するにはどうすればよいですか?

4

2 に答える 2

1

COMインタフェースIADsUserを使用することができます。「期限切れにならない」フラグを有効にするには、このMSDNの例を参照してください。

あなたはそれを漕ぐ前に最初の部分を使うことができますV_I4(&var) |= ADS_UF_DONT_EXPIRE_PASSWD;-それをに置き換えてくださいif (V_I4(&var) & ADS_UF_DONT_EXPIRE_PASSWD) { /* option is enabled! your code here */}

お役に立てれば。そしてこれは仕事です:)

于 2012-11-02T12:00:31.097 に答える
1

これをチェックしてください...あなたの問題を解決できることを願っています

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

スクリプトなしで使用する場合は、サードパーティ製ツールを使用してください。パスワードの有効期限が切れており、パスワードの有効期限が切れていないことが自動的に更新されます。

于 2012-11-05T10:35:45.573 に答える