Condividi tramite


Metodo IADsNameTranslate::InitEx (iads.h)

Il metodo IADsNameTranslate::InitEx inizializza un oggetto converte un nome associandolo a un server di directory, un dominio o un catalogo globale specificati usando le credenziali utente specificate. Per inizializzare l'oggetto senza credenziali utente esplicite, usare IADsNameTranslate::Init.

Il metodo IADsNameTranslate::InitEx inizializza l'oggetto impostando il server o il dominio a cui punta l'oggetto e fornendo credenziali utente.

Sintassi

HRESULT InitEx(
  long lnSetType,
  BSTR bstrADsPath,
  BSTR bstrUserID,
  BSTR bstrDomain,
  BSTR bstrPassword
);

Parametri

lnSetType

Tipo di inizializzazione da eseguire. I valori possibili sono definiti in ADS_NAME_INITTYPE_ENUM.

bstrADsPath

Nome del server o del dominio, a seconda del valore di lnInitType. Quando viene emesso ADS_NAME_INITTYPE_GC, questo parametro viene ignorato. Il server di catalogo globale del dominio del computer corrente verrà usato per eseguire le operazioni di conversione del nome. Questo metodo avrà esito negativo se il computer non fa parte di un dominio, perché in questo scenario non verrà trovato alcun catalogo globale. Per altre informazioni, vedere ADS_NAME_INITTYPE_ENUM.

bstrUserID

Nome utente.

bstrDomain

Nome di dominio utente.

bstrPassword

Password utente.

Valore restituito

Restituisce un codice di errore HRESULT o RPC standard, incluso:

Commenti

Dopo l'inizializzazione riuscita, usare l'oggetto translate name per inviare richieste di traduzioni dei nomi degli oggetti directory. Per altre informazioni, vedere IADsNameTranslate::Set, IADsNameTranslate::Get, IADsNameTranslate::SetEx o IADsNameTranslate::GetEx.

Esempio

Nell'esempio di codice C/C++ seguente viene usato il metodo IADsNameTranslate::InitEx per inizializzare un oggetto IADsNameTranslate prima del rendering del nome distinto di un oggetto utente nel formato s.

IADsNameTranslate *pNto;
HRESULT hr;
hr = CoCreateInstance(CLSID_NameTranslate,
                      NULL,
                      CLSCTX_INPROC_SERVER,
                      IID_IADsNameTranslate,
                      (void**)&pNto);
if(FAILED(hr)) { exit 1;}
 
hr = pNto->InitEx(ADS_NAME_INITTYPE_SERVER,
                  CComBSTR("myServer"),
                  CComBSTR("jeffsmith"),
                  CComBSTR("Fabrikam"),
                  CComBSTR("top secret"));
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'esempio di codice visual Basic seguente usa il metodo IADsNameTranslate::InitEx per inizializzare un oggetto IADsNameTranslate per avere il nome distinto di un oggetto utente sottoposto a rendering nel formato nome utente.

Dim nto As New NameTranslate
dso="CN=jeffsmith, CN=users, DC=Fabrikam dc=COM"
server = "myServer"
domain = "Fabrikam"
user = "jeffsmith"
passwd = "myPass"
 
nto.InitEx  ADS_NAME_INITTYPE_SERVER, server,user,domain,passwd
nto.Set ADS_NAME_TYPE_1779, dso
trans = nto.Get(ADS_NAME_TYPE_NT4) 
MsgBox "Name in the translated format: " & trans

Nell'esempio di codice VBScript/ASP seguente viene usato il metodo IADsNameTranslate::InitEx per inizializzare un oggetto IADsNameTranslate per avere il nome distinto di un oggetto utente sottoposto a rendering nel formato nome utente.

<%@ 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
 
  server = "myServer"
  domain = "Fabrikam"
  user = "jeffsmith"
  passwd = "myPass"
 
  dn = "CN=jeffsmith,CN=Users,DC=Fabrikam,DC=COM" 
 
  Set nto = Server.CreateObject("NameTranslate")
  nto.InitEx ADS_NAME_INITTYPE_SERVER, server,user,domain,passwd
  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>

Requisiti

Requisito Valore
Client minimo supportato Windows Vista
Server minimo supportato Windows Server 2008
Piattaforma di destinazione Windows
Intestazione iads.h
DLL Activeds.dll

Vedi anche

ADS_NAME_TYPE_ENUM

IADsNameTranslate

IADsNameTranslate::Get

IADsNameTranslate::GetEx

IADsNameTranslate::Set

IADsNameTranslate::SetEx