密码永不过期 (WinNT 提供程序)

若要使用 WinNT ADSI 提供程序启用此选项,请在 UserFlags 属性上设置 ADS_UF_DONT_EXPIRE_PASSWD (0x10000) 标志。

注意

对于 Windows 2000 及更高版本,请使用 LDAP ADSI 提供程序执行用户管理操作,如下所示。 有关详细信息,请参阅密码永不过期(LDAP 提供程序)

 

示例 1

以下代码示例显示如何使用 Visual Basic 和 ADSI 设置密码永不过期选项。

Const ADS_UF_DONT_EXPIRE_PASSWD = &H10000
Dim usr as IADs

Set usr = GetObject("WinNT://Fabrikam/JeffSmith")
oldFlags = usr.Get("UserFlags")
newFlags = oldFlags Or ADS_UF_DONT_EXPIRE_PASSWD
usr.Put "UserFlags", newFlags
usr.SetInfo

示例 2

以下代码示例显示如何使用 C++ 和 ADSI 设置密码永不过期选项。

#include <activeds.h>

IADsUser *pUser = NULL;
VARIANT var;
VariantInit(&var);

HRESULT hr = S_OK;
LPWSTR adsPath;
adsPath = L"WinNT://Fabrikam/JeffSmith";
hr = ADsGetObject(adsPath,IID_IADsUser, (void**)&pUser);

CComBSTR sbstrUserFlags = "UserFlags";
hr = pUser->Get(sbstrUserFlags, &var);

V_I4(&var) |= ADS_UF_DONT_EXPIRE_PASSWD;
hr = pUser->Put(sbstrUserFlags, var);

hr = pUser->SetInfo();

VariantClear(&var);

pUser->Release();