ADSI開発用のVisual C++6.0の設定
Microsoft Visual C++6.0開発システムを使用して、エンタープライズアプリケーションを開発できます。 ADSIアプリケーションを開発するためにVisual C++6.0環境を設定するには、次の手順を実行します。
Microsoft Visual C++6.0開発環境の設定
- includeおよびlibraryディレクトリをポイントします。 Tools | Optionsを選択します。 Directoryタブをクリックし、ADSIヘッダーファイルのパスを指定する。
- プロジェクトにActiveds.hファイルを含めます。
- Activeds.libファイルとAdsiidファイルをプロジェクトのリンカー入力に追加します。
- ADSIを使用してプログラミングを開始します。
Windowsドメインにログオンします。 また、Active Directoryのデータを変更するためのアクセス許可も必要です。 既定では、管理者にはこの特権があります。 このコード例を入力するには、次のようにします。
サンプルVisual C++アプリケーション: ドメインでのユーザーの作成
Visual C++6.0を起動します。
スタンドアロンの実行可能プロジェクトを作成します。 MFC、ATL、コンソールアプリケーションのいずれかを指定できます。
前の手順に従って、プロジェクトを設定します。"。
次のコード例を入力します。 LDAP :// CN=users, DC=fabrikam, DC=com"という文字列を、ドメイン内のコンテナーのADsPathに置き換えます。 また、ユーザー名"jeffsmith"を、ドメイン内で一意のユーザー名に置き換える必要があります。
#include "stdafx.h" #include "activeds.h" int main(int argc, char* argv[]) { HRESULT hr; IADsContainer *pCont; IDispatch *pDisp=NULL; IADs *pUser; // Initialize COM before calling any ADSI functions or interfaces. CoInitialize(NULL); hr = ADsGetObject( L"LDAP://CN=users,DC=fabrikam,DC=com", IID_IADsContainer, (void**) &pCont ); if ( !SUCCEEDED(hr) ) { return 0; } //----------------- // Create a user //----------------- hr = pCont->Create(CComBSTR("user"), CComBSTR("cn=jeffsmith"), &pDisp ); // Release the container object. pCont->Release(); if ( !SUCCEEDED(hr) ) { return 0; } hr = pDisp->QueryInterface( IID_IADs, (void**) &pUser ); // Release the dispatch interface. pDisp->Release(); if ( !SUCCEEDED(hr) ) { return 0; } // Commit the object data to the directory. pUser->SetInfo(); // Release the object. pUser->Release(); CoUninitialize(); }
アプリケーションをビルドして実行します。 ユーザーが作成されたことを確認するには、Active Directoryユーザーとコンピューター管理ツールを使用します。