次の方法で共有


IADsNameTranslate::Set メソッド (iads.h)

IADsNameTranslate::Set メソッドは、名前変換用に指定されたオブジェクトを設定するようにディレクトリ サービスに指示します。 複数のオブジェクトの名前と形式を設定するには、 IADsnametranslate::SetEx を使用します。

構文

HRESULT Set(
  long lnSetType,
  BSTR bstrADsPath
);

パラメーター

lnSetType

ディレクトリ オブジェクトの名前の形式。 詳細については、「 ADS_NAME_TYPE_ENUM」を参照してください。

bstrADsPath

オブジェクト名 ("CN=Administrator, CN=users, DC=Fabrikam, DC=com" など)。

戻り値

このメソッドは、次を含む標準 の HRESULT 戻り値をサポートしています。

解説

このメソッドを呼び出してオブジェクト名を設定する前に、 IADsNameTranslate::Init または IADsNameTranslate::InitEx を使用してディレクトリ サービスへの接続を確立しておく必要があります。

IADsNameTranslate::Set メソッドを使用して、ディレクトリ サーバー上に存在するオブジェクトの名前変換を設定できます。 紹介の追跡がオンの場合、このメソッドは他のサーバーで見つかったオブジェクトも設定します。 紹介の追跡の詳細については、「 IADsNameTranslate プロパティ メソッド」を参照してください。

次の C/C++ コード例では 、IADsNameTranslate::Set メソッドを使用してオブジェクトを設定し、その名前を RFC 1779 形式からユーザー名形式に変換できるようにします。

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

次の Visual Basic コード例では 、IADsNameTranslate::Set メソッドを使用してオブジェクトを設定し、その名前を RFC 1779 形式からユーザー名形式に変換できるようにします。

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)  

次の VBScript/ASP コード例では 、IADsNameTranslate::Set メソッドを使用して、オブジェクトの名前を RFC 1779 形式からユーザー名形式に変換するように設定します。

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

要件

   
サポートされている最小のクライアント Windows Vista
サポートされている最小のサーバー Windows Server 2008
対象プラットフォーム Windows
ヘッダー iads.h
[DLL] Activeds.dll

関連項目

ADS_NAME_TYPE_ENUM

IADsNameTranslate

IADsNameTranslate プロパティ メソッド

IADsNameTranslate::Init

IADsNameTranslate::InitEx

IADsNameTranslate::SetEx