IADsServiceOperations::SetPassword 方法 (iads.h)
IADsServiceOperations::SetPassword 方法设置服务管理器使用的帐户的密码。 创建此服务的安全上下文时,将调用此方法。
语法
HRESULT SetPassword(
[in] BSTR bstrNewPassword
);
参数
[in] bstrNewPassword
要存储为新密码的以 null 结尾的 Unicode 字符串。
返回值
此方法支持标准返回值,包括S_OK。 有关其他返回值的详细信息,请参阅 ADSI 错误代码。
注解
属性 IADsService::get_ServiceAccountName 标识要为其设置此密码的帐户。
示例
下面的代码示例演示如何为 Windows 2000 上运行的 Microsoft 传真服务设置密码。
Dim cp As IADsComputer
Dim so As IADsServiceOperations
Dim s As IADsService
Dim sPass As String
On Error GoTo Cleanup
Set cp = GetObject("WinNT://myMachine,computer")
Set so = cp.GetObject("Service", "Fax")
' Insert code to securely retrieve a new password from the user.
so.SetPassword sPass
Set s = so
MsgBox "The password for " & so.name & " has been changed on "_
& s.ServiceAccountName
Cleanup:
If (Err.Number<>0) Then
MsgBox("An error has occurred. " & Err.Number)
End If
Set cp = Nothing
Set so = Nothing
Set s = Nothing
下面的代码示例演示如何为 Windows 2000 上运行的 Microsoft 传真服务设置密码。
HRESULT SetServicePassword(LPCWSTR pwszADsPath, LPCWSTR, pwszPasword)
{
IADsContainer *pCont = NULL;
IADsServiceOperations *pSrvOp = NULL;
IDispatch *pDisp = NULL;
HRESULT hr = S_OK;
hr = ADsGetObject(pwszADsPath, IID_IADsContainer, (void**)&pCont);
if(FAILED(hr))
{
goto Cleanup;
}
hr = pCont->GetObject(CComBSTR("Service"), CComBSTR("Fax"), &pDisp);
if(FAILED(hr))
{
goto Cleanup;
}
hr = pDisp->QueryInterface(IID_IADsServiceOperations, (void**)&pSrvOp);
if(FAILED(hr))
{
goto Cleanup;
}
// Insert code to securely retrieve the password from the user.
hr = pSrvOp->SetPassword(CComBSTR(pwszPassword));
Cleanup:
if(pDisp)
{
pDisp->Release();
}
if(pCont)
{
pCont->Release();
}
if(pSrvOp)
{
pSrvOp->Release();
}
}
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows Vista |
最低受支持的服务器 | Windows Server 2008 |
目标平台 | Windows |
标头 | iads.h |
DLL | Activeds.dll |