为 ADSI 开发设置 Visual C++ 6.0

Microsoft Visual C++ 6.0 开发系统可用于开发企业应用程序。 要设置 Visual C++ 6.0 环境以开发 ADSI 应用程序,请执行以下步骤:

设置 Microsoft Visual C++ 6.0 开发环境

  1. 指向 include 和 library 目录。 选择工具 | 选项。 单击“目录“选项卡,并指定 ADSI 头文件的路径。
  2. 在项目中包含 Activeds.h 文件。
  3. 将 Activeds.lib 和 Adsiid.lib 文件添加到项目的链接器输入中。
  4. 开始使用 ADSI 进行编程。

登录 Windows 域。 你还必须拥有修改 Active Directory 中数据的权限。 默认情况下,管理员拥有此权限。 输入此代码示例:

Visual C++ 示例应用程序:在域中创建用户

  1. 启动 Visual C++ 6.0。

  2. 创建一个独立的可执行项目。 它可以是 MFC、ATL 或控制台应用程序。

  3. 按照前面的步骤设置项目。

  4. 输入以下代码示例。 将“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();
    }
    
  5. 生成并运行应用程序。 要验证用户是否已创建,请使用 Active Directory 用户和计算机管理工具。