Share via


ADS_NAME_INITTYPE_ENUM-Enumeration (iads.h)

Die ADS_NAME_INITTYPE_ENUM-Enumeration gibt die Initialisierungstypen an, die für ein NameTranslate-Objekt ausgeführt werden sollen. Es wird in der IADsNameTranslate-Schnittstelle verwendet.

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;

Konstanten

 
ADS_NAME_INITTYPE_DOMAIN
Wert: 1
Initialisiert ein NameTranslate-Objekt , indem die Domäne festgelegt wird, an die das Objekt gebunden ist.
ADS_NAME_INITTYPE_SERVER
Wert: 2
Initialisiert ein NameTranslate-Objekt , indem der Server festgelegt wird, an den das Objekt gebunden ist.
ADS_NAME_INITTYPE_GC
Wert: 3
Initialisiert ein NameTranslate-Objekt , indem der globale Katalog gesucht wird, an den das Objekt gebunden ist.

Hinweise

Die IADsNameTranslate::Init-Methode oder die IADsNameTranslate::InitEx-Methode verwendet diese Optionen, um das NameTranslate-Objekt zu initialisieren. Wenn ADS_NAME_INITTYPE_SERVER verwendet wird, geben Sie den Computernamen eines Verzeichnisservers an. Wenn ADS_NAME_INITTYPE_DOMAIN festgelegt ist, geben Sie den Domänennamen innerhalb einer Verzeichnisgesamtstruktur an. Wenn ADS_NAME_INITTYPE_GC ausgegeben wird, wird der zweite Parameter in IADsNameTranslate::Init oder IADsNameTranslate::InitEx ignoriert. Der globale Katalogserver der Domäne des aktuellen Computers wird zum Ausführen der Namensübersetzungsvorgänge verwendet. Die Initialisierung schlägt fehl, wenn der Hostcomputer nicht Teil einer Domäne ist, da kein globaler Katalog gefunden wird.

Hinweis Da VBScript keine Daten aus einer Typbibliothek lesen kann, erkennen VBScript-Anwendungen die oben definierten symbolischen Konstanten nicht. Verwenden Sie stattdessen die numerischen Konstanten, um die entsprechenden Flags in Ihren VBScript-Anwendungen festzulegen. Um symbolische Konstanten als gute Programmierpraxis zu verwenden, schreiben Sie explizite Deklarationen solcher Konstanten, wie hier in Ihren VBScript-Anwendungen geschehen.
 

Beispiele

Im folgenden C/C++-Codebeispiel wird die IADsNameTranslate::Init-Methode verwendet, um ein NameTranslate-Objekt über den globalen Katalog zu initialisieren, vorausgesetzt, der Client, auf dem die Anwendung ausgeführt wird, befindet sich in der Verzeichnisgesamtstruktur. Anschließend wird der distinguished Name eines Benutzerobjekts im Windows-Format gerendert.

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

Im folgenden Visual Basic-Codebeispiel wird die IADsNameTranslate::Init-Methode verwendet, um ein NameTranslate-Objekt über den globalen Katalog zu initialisieren, vorausgesetzt, der Client, auf dem die Anwendung ausgeführt wird, befindet sich in der Verzeichnisgesamtstruktur. Anschließend wird der distinguished Name eines Benutzerobjekts im Windows-Format gerendert.

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

Im folgenden VBScript/ASP-Codebeispiel wird die IADsNameTranslate::Init-Methode verwendet, um ein NameTranslate-Objekt über den globalen Katalog zu initialisieren, vorausgesetzt, der Client, auf dem die Anwendung ausgeführt wird, befindet sich in der Verzeichnisgesamtstruktur. Anschließend wird der distinguished Name eines Benutzerobjekts im Windows-Format gerendert.

<%@ 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>

Anforderungen

   
Unterstützte Mindestversion (Client) Windows Vista
Unterstützte Mindestversion (Server) Windows Server 2008
Kopfzeile iads.h

Weitere Informationen

ADSI-Enumerationen

IADsNameTranslate