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

另请参阅

IADsService

IADsService::get_ServiceAccountName

IADsServiceOperations