IADsNameTranslate::Init, méthode (iads.h)
La méthode IADsNameTranslate::Init initialise un objet de traduction de nom en lisant un serveur d’annuaire, un domaine ou un catalogue global spécifié, à l’aide des informations d’identification de l’utilisateur actuel. Pour initialiser l’objet avec des informations d’identification utilisateur différentes, utilisez IADsNameTranslate::InitEx.
Syntaxe
HRESULT Init(
long lnSetType,
BSTR bstrADsPath
);
Paramètres
lnSetType
Type d’initialisation à effectuer. Les valeurs possibles sont définies dans ADS_NAME_INITTYPE_ENUM.
bstrADsPath
Nom du serveur ou du domaine, selon la valeur de lnInitType. Lorsque ADS_NAME_INITTYPE_GC est émis, ce paramètre est ignoré. Le serveur de catalogue global du domaine de l’ordinateur actuel effectue les opérations de traduction de nom. Cette méthode échoue si l’ordinateur ne fait pas partie d’un domaine, car aucun catalogue global n’est trouvé dans ce scénario. Pour plus d’informations, consultez ADS_NAME_INITTYPE_ENUM.
Valeur retournée
Retourne un code d’erreur HRESULT ou RPC standard, notamment :
Notes
Une fois l’initialisation réussie, vous pouvez continuer à utiliser l’objet name translate pour envoyer des demandes de traductions de noms d’objets dans le répertoire. Pour plus d’informations, consultez IADsNameTranslate::Set ou IADsNameTranslate::Get.
Exemples
L’exemple de code C/C++ suivant utilise la méthode IADsNameTranslate::Init pour initialiser un objet IADsNameTranslate avant que le nom unique d’un objet utilisateur ne soit rendu au format s.
IADsNameTranslate *pNto;
HRESULT hr;
hr = CoCreateInstance(CLSID_NameTranslate,
NULL,
CLSCTX_INPROC_SERVER,
IID_IADsNameTranslate,
(void**)&pNto);
if(FAILED(hr)) { exit 1;}
hr = pNto->Init(ADS_NAME_INITTYPE_SERVER,
CComBSTR("myServer"));
if (FAILED(hr)) { exit 1;}
hr =pNto->Set(ADS_NAME_TYPE_1779,
CComBSTR("cn=jeffsmith,cn=users,dc=Fabrikam,dc=com"));
if(FAILED(hr)) {exit 1;}
BSTR bstr;
hr = pNto->Get(ADS_NAME_TYPE_NT4, &bstr);
printf("Name in the translated format: %S\n", bstr);
SysFreeString(bstr);
pNto->Release();
L’exemple de code Visual Basic suivant utilise la méthode IADsNameTranslate::Init pour initialiser un objet IADsNameTranslate afin que le nom unique d’un objet utilisateur soit affiché au format de nom d’utilisateur.
Dim nto As New NameTranslate
dso="CN=jeffsmith, CN=users, DC=Fabrikam dc=COM"
nto.Init ADS_NAME_INITTYPE_SERVER, "myServer"
nto.Set ADS_NAME_TYPE_1779, dso
trans = nto.Get(ADS_NAME_TYPE_NT4)
L’exemple de code VBScript/ASP suivant utilise la méthode IADsNameTranslate::Init pour initialiser un objet IADsNameTranslate afin d’afficher le nom unique d’un objet utilisateur au format de nom d’utilisateur.
<%@ Language=VBScript %>
<html>
<body>
<%
Dim nto
const ADS_NAME_INITTYPE_SERVER = 2 ' VBScript cannot read
const ADS_NAME_TYPE_1779 = 1 ' enumeration definition
const ADS_NAME_TYPE_NT4 = 3
dn = "CN=jeffsmith,CN=Users,DC=Fabrikam,DC=COM"
Set nto = Server.CreateObject("NameTranslate")
nto.Init ADS_NAME_INITTYPE_SERVER, "myServer"
nto.Set ADS_NAME_TYPE_1779, dn
result = nto.Get(ADS_NAME_TYPE_NT4)
Response.Write "<p>Name in the translated format: " & result
%>
</body>
</html>
Configuration requise
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 |