ADS_NAME_INITTYPE_ENUM enumeración (iads.h)

La enumeración ADS_NAME_INITTYPE_ENUM especifica los tipos de inicialización que se van a realizar en un objeto NameTranslate . Se usa en la interfaz IADsNameTranslate .

Syntax

typedef enum __MIDL___MIDL_itf_ads_0001_0050_0002 {
  ADS_NAME_INITTYPE_DOMAIN = 1,
  ADS_NAME_INITTYPE_SERVER = 2,
  ADS_NAME_INITTYPE_GC = 3
} ADS_NAME_INITTYPE_ENUM;

Constantes

 
ADS_NAME_INITTYPE_DOMAIN
Valor: 1
Inicializa un objeto NameTranslate estableciendo el dominio al que se enlaza el objeto.
ADS_NAME_INITTYPE_SERVER
Valor: 2
Inicializa un objeto NameTranslate estableciendo el servidor al que se enlaza el objeto.
ADS_NAME_INITTYPE_GC
Valor: 3
Inicializa un objeto NameTranslate mediante la búsqueda del catálogo global al que se enlaza el objeto.

Comentarios

El método IADsNameTranslate::Init o el método IADsNameTranslate::InitEx usa estas opciones para inicializar el objeto NameTranslate . Cuando se use ADS_NAME_INITTYPE_SERVER , especifique el nombre de la máquina de un servidor de directorios. Cuando se establece ADS_NAME_INITTYPE_DOMAIN , proporcione el nombre de dominio dentro de un bosque de directorios. Cuando se emite ADS_NAME_INITTYPE_GC , se omite el segundo parámetro de IADsNameTranslate::Init o IADsNameTranslate::InitEx . El servidor de catálogo global del dominio del equipo actual se usa para realizar las operaciones de traducción de nombres. Se produce un error en la inicialización si el equipo host no forma parte de un dominio porque no se encuentra ningún catálogo global.

Nota Dado que VBScript no puede leer datos de una biblioteca de tipos, las aplicaciones vbScript no reconocen las constantes simbólicas como se ha definido anteriormente. En su lugar, use las constantes numéricas para establecer las marcas adecuadas en las aplicaciones VBScript. Para usar constantes simbólicas como práctica de programación recomendada, escriba declaraciones explícitas de estas constantes, como se hace aquí, en las aplicaciones VBScript.
 

Ejemplos

En el siguiente ejemplo de código de C/C++ se usa el método IADsNameTranslate::Init para inicializar un objeto NameTranslate a través del catálogo global, suponiendo que el cliente que ejecuta la aplicación esté dentro del bosque de directorios. A continuación, representa el nombre distintivo de un objeto de usuario en formato Windows.

IADsNameTranslate *pNto = NULL;
HRESULT hr = S_OK;
CComBSTR sbstr;

hr = CoCreateInstance(CLSID_NameTranslate,
                      NULL,
                      CLSCTX_INPROC_SERVER,
                      IID_IADsNameTranslate,
                      (void**)&pNto);
if(FAILED(hr)) { exit 1;}
 
hr = pNto->Init(ADS_NAME_INITTYPE_GC, CComBSTR(""));
if (FAILED(hr))
{ 
   goto cleanup;
}
 
hr =pNto->Set(ADS_NAME_TYPE_1779,
             CComBSTR(L"cn=jeffsmith,cn=users,dc=Fabrikam,dc=com"));
if(FAILED(hr))
{
   goto cleanup;
}
 
hr = pNto->Get(ADS_NAME_TYPE_NT4, &sbstr);
printf("Name in the translated format: %S\n", sbstr);

cleanup: 
if(pNto)
{
    pNto->Release();
}

En el siguiente ejemplo de código de Visual Basic se usa el método IADsNameTranslate::Init para inicializar un objeto NameTranslate a través del catálogo global, suponiendo que el cliente que ejecuta la aplicación está dentro del bosque de directorios. A continuación, representa el nombre distintivo de un objeto de usuario en formato Windows.

Dim nto as New NameTranslate
dso="CN=jeffsmith, CN=users, DC=Fabrikam dc=COM"
 
nto.Init  ADS_NAME_INITTYPE_GC, ""
nto.Set ADS_NAME_TYPE_1779, dso
trans = nto.Get(ADS_NAME_TYPE_NT4)   
MsgBox "Translated name = " & trans

En el siguiente ejemplo de código VBScript/ASP se usa el método IADsNameTranslate::Init para inicializar un objeto NameTranslate a través del catálogo global, suponiendo que el cliente que ejecuta la aplicación esté dentro del bosque de directorios. A continuación, representa el nombre distintivo de un objeto de usuario en formato Windows.

<%@ Language=VBScript %>
<html>
<body>
<%
  Dim nto
  const ADS_NAME_INITTYPE_GC = 3  ' VBScript cannot read. 
  const ADS_NAME_TYPE_1779 = 1    ' Enumeration definition.
  const ADS_NAME_TYPE_NT4 = 3
 
  dn = "CN=jeff smith,CN=Users,DC=Fabrikam,DC=COM" 
 
  Set nto = Server.CreateObject("NameTranslate")
  nto.Init ADS_NAME_INITTYPE_GC, ""
  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>

Requisitos

   
Cliente mínimo compatible Windows Vista
Servidor mínimo compatible Windows Server 2008
Encabezado iads.h

Consulte también

Enumeraciones ADSI

IADsNameTranslate