MÉTHODE IADsServiceOperations ::SetPassword (iads.h)
La méthode IADsServiceOperations ::SetPassword définit le mot de passe du compte utilisé par le gestionnaire de services. Cette méthode est appelée lorsque le contexte de sécurité de ce service est créé.
Syntaxe
HRESULT SetPassword(
[in] BSTR bstrNewPassword
);
Paramètres
[in] bstrNewPassword
Chaîne Unicode terminée par null à stocker en tant que nouveau mot de passe.
Valeur retournée
Cette méthode prend en charge les valeurs de retour standard, y compris S_OK. Pour plus d’informations sur les autres valeurs de retour, consultez Codes d’erreur ADSI.
Remarques
La propriété IADsService ::get_ServiceAccountName identifie le compte pour lequel ce mot de passe doit être défini.
Exemples
L’exemple de code suivant montre comment définir un mot de passe pour le service de télécopie Microsoft s’exécutant sur Windows 2000.
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
L’exemple de code suivant montre comment définir un mot de passe pour le service de télécopie Microsoft s’exécutant sur Windows 2000.
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();
}
}
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows Vista |
Serveur minimal pris en charge | Windows Server 2008 |
Plateforme cible | Windows |
En-tête | iads.h |
DLL | Activeds.dll |