IADsServiceOperations::SetPassword-Methode (iads.h)

Die IADsServiceOperations::SetPassword-Methode legt das Kennwort für das vom Dienst-Manager verwendete Konto fest. Diese Methode wird aufgerufen, wenn der Sicherheitskontext für diesen Dienst erstellt wird.

Syntax

HRESULT SetPassword(
  [in] BSTR bstrNewPassword
);

Parameter

[in] bstrNewPassword

Die unicode-Zeichenfolge mit Null-Beendigung, die als neues Kennwort gespeichert werden soll.

Rückgabewert

Diese Methode unterstützt die Standardrückgabewerte, einschließlich S_OK. Weitere Informationen zu anderen Rückgabewerten finden Sie unter ADSI-Fehlercodes.

Hinweise

Die Eigenschaft IADsService::get_ServiceAccountName gibt das Konto an, für das dieses Kennwort festgelegt werden soll.

Beispiele

Das folgende Codebeispiel zeigt, wie Sie ein Kennwort für den Unter Windows 2000 ausgeführten Microsoft-Faxdienst festlegen.

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

Das folgende Codebeispiel zeigt, wie Sie ein Kennwort für den Unter Windows 2000 ausgeführten Microsoft-Faxdienst festlegen.

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();
    }
}

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows Vista
Unterstützte Mindestversion (Server) Windows Server 2008
Zielplattform Windows
Kopfzeile iads.h
DLL Activeds.dll

Weitere Informationen

IADsService

IADsService::get_ServiceAccountName

IADsServiceOperations