Win32 API 日本語リファレンス
ホームNetworking.ActiveDirectory › IDsBrowseDomainTree

IDsBrowseDomainTree

COM
IID7cabcf1e-78f5-11d2-960c-00c04fa31a86継承元IUnknown自前メソッド開始 vtbl3

公式ドキュメント

IDsBrowseDomainTree インターフェイスは、アプリケーションがドメインブラウザーダイアログボックスを表示したり、特定のコンピューターに関連する信頼ドメインの一覧を取得したりするために使用します。

解説(Remarks)

このインターフェイスのインスタンスは、以下に示すように CLSID_DsDomainTreeBrowser クラス識別子を指定して CoCreateInstance を呼び出すことで作成します。

HRESULT hr = S_OK;
IDsBrowseDomainTree *pDSB = NULL;

hr = CoCreateInstance(    CLSID_DsDomainTreeBrowser,
                          NULL,
                          CLSCTX_INPROC_SERVER,
                          IID_IDsBrowseDomainTree,
                          (void**)&pDSB);

if(SUCCEEDED(hr))
{
    //use the IDsBrowseDomainTree object

    //release the IDsBrowseDomainTree object
    pDSB->Release();
}

メソッド 5

vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。

vtbl 3 HRESULT BrowseTo(HWND hwndParent, LPWSTR* ppszTargetPath, DWORD dwFlags)

IDsBrowseDomainTree::BrowseTo メソッドは、ドメインを参照するためのダイアログボックスを表示します。

hwndParentHWNDinドメインブラウザーダイアログボックスの所有者となるウィンドウのハンドルです。
ppszTargetPathLPWSTR*outドメインブラウザーで選択されたドメインのパス文字列を受け取る Unicode 文字列ポインターへのポインターです。このメモリは不要になったら CoTaskMemFree を呼び出して解放する必要があります。既定では、このパスは "myDom.Fabrikam.com" の形式になります。dwFlagsDBDTF_RETURNFQDN フラグが含まれている場合、パスは "DC=myDom, DC=Fabrikam, DC=com" の形式になります。
dwFlagsDWORDin

ドメインブラウザーダイアログボックスの動作を変更するフラグのセットが含まれます。これはゼロ、または以下の値の 1 つ以上を組み合わせて指定できます。

DBDTF_RETURNFQDN

ドメインブラウザーは完全修飾ドメイン名を ppszTargetPath に格納します。完全修飾ドメイン名は "myDom.Fabrikam.com" ではなく "DC=myDom, DC=Fabrikam, DC=com" の形式になります。

DBDTF_RETURNMIXEDDOMAINS

ドメインブラウザーはダウンレベルの信頼ドメインを表示します。

DBDTF_RETURNEXTERNAL

ドメインブラウザーは外部の信頼ドメインを表示します。

DBDTF_RETURNINBOUND

このフラグが設定されている場合、ドメインブラウザーは信頼するドメインを表示します。そうでない場合、ドメインブラウザーは信頼されるドメインを表示します。

DBDTF_RETURNINOUTBOUND

ドメインブラウザーは信頼されるドメインと信頼するドメインの両方を表示します。

戻り値

以下を含む標準的な HRESULT 値を返します。

vtbl 4 HRESULT GetDomains(DOMAIN_TREE** ppDomainTree, DWORD dwFlags)

IDsBrowseDomainTree::GetDomains メソッドは、現在のコンピューターの信頼ドメインを取得します。現在のコンピューターは IDsBrowseDomainTree::SetComputer メソッドを使用して設定します。

ppDomainTreeDOMAIN_TREE**inout信頼ドメインのデータを受け取る DOMAINTREE 構造体ポインターへのポインターです。呼び出し元は、不要になったら IDsBrowseDomainTree::FreeDomains を呼び出してこのメモリを解放する必要があります。
dwFlagsDWORDin

ドメインの内容を変更するフラグのセットが含まれます。これはゼロ、または以下の値の 1 つ以上を組み合わせて指定できます。

DBDTF_RETURNFQDN

DOMAINDESC 構造体の pszNCName メンバーは完全修飾ドメイン名を受け取ります。完全修飾ドメイン名は "myDom.Fabrikam.com" ではなく "DC=myDom, DC=Fabrikam, DC=com" の形式になります。

DBDTF_RETURNMIXEDDOMAINS

このメソッドはダウンレベルの信頼ドメインを返します。

DBDTF_RETURNEXTERNAL

このメソッドは外部の信頼ドメインを返します。

DBDTF_RETURNINBOUND

このフラグが設定されている場合、このメソッドは信頼するドメインを返します。このフラグが設定されていない場合、このメソッドは信頼されるドメインを返します。

DBDTF_RETURNINOUTBOUND

このメソッドは信頼されるドメインと信頼するドメインの両方を返します。

戻り値

以下を含む標準的な HRESULT 値を返します。

解説(Remarks)

このメソッドが提供するデータへのアクセス方法および使用方法の詳細については、Domain Browser を参照してください。

vtbl 5 HRESULT FreeDomains(DOMAIN_TREE** ppDomainTree)

IDsBrowseDomainTree::FreeDomains メソッドは、IDsBrowseDomainTree::GetDomains メソッドによって割り当てられたメモリを解放します。

ppDomainTreeDOMAIN_TREE**inoutDOMAINTREE データ構造体へのポインターです。

戻り値

以下を含む標準的な HRESULT 値を返します。

vtbl 6 HRESULT FlushCachedDomains()

IDsBrowseDomainTree::FlushCachedDomains メソッドは、キャッシュされたドメイン一覧を解放します。

戻り値

以下を含む標準的な HRESULT 値を返します。

解説(Remarks)

このメソッドは、内部にキャッシュされたドメインデータを解放します。別のドメインのコンピューターに対象を切り替えるには、 IDsBrowseDomainTree::SetComputer を呼び出す前にこのメソッドを呼び出す必要があります。

vtbl 7 HRESULT SetComputer(LPWSTR pszComputerName, LPWSTR pszUserName, LPWSTR pszPassword)

IDsBrowseDomainTree インターフェイスのこのインスタンスが使用するコンピューターと資格情報を指定します。

pszComputerNameLPWSTRin対象コンピューターの名前を格納する null 終端の Unicode 文字列へのポインターです。
pszUserNameLPWSTRinコンピューターへのアクセスに使用するユーザー名を格納する null 終端の Unicode 文字列へのポインターです。
pszPasswordLPWSTRinコンピューターへのアクセスに使用するパスワードを格納する null 終端の Unicode 文字列へのポインターです。

戻り値

以下を含む標準的な HRESULT 値を返します。

解説(Remarks)

このメソッドが呼び出されない場合、既定のコンピューターとしてローカルホストが想定されます。

特定の IDsBrowseDomainTree インスタンスに対して SetComputer を呼び出した場合、SetComputer を再度呼び出す前に IDsBrowseDomainTree::FlushCachedDomains を呼び出す必要があります。

出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)

HSP用 COM定義

#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"

出力引数:
#define global IID_IDsBrowseDomainTree "{7CABCF1E-78F5-11D2-960C-00C04FA31A86}"
#usecom global IDsBrowseDomainTree IID_IDsBrowseDomainTree "{}"
#comfunc global IDsBrowseDomainTree_BrowseTo            3 sptr,var,int
#comfunc global IDsBrowseDomainTree_GetDomains          4 var,int
#comfunc global IDsBrowseDomainTree_FreeDomains         5 var
#comfunc global IDsBrowseDomainTree_FlushCachedDomains  6
#comfunc global IDsBrowseDomainTree_SetComputer         7 wstr,wstr,wstr
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。