BUG: An Error 0x8007202F constraint violation occurs when you add a value for the description property of a user object (286760)



The information in this article applies to:

  • Microsoft Windows Server 2003 SP1
  • Microsoft Windows 2000 Server
  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows 2000 Datacenter Server
  • Microsoft Active Directory Service Interfaces 2.5
  • Microsoft Active Directory Services Interface, System Component
  • Microsoft Active Directory Services Interface, Microsoft Active Directory Client

This article was previously published under Q286760

SYMPTOMS

When you try to put multiple values in the description property of a user object, you may receive one of the following error messages:
  • HRESULT that is returned in Microsoft Visual C++:
    Error 0x8007202F (2147950639) Constraint violation
  • Error description that is returned in a .vbs file in the Err.Description property of the error object:
    Trying to Set Multiple Values into Description
  • Error message that is returned from Active Directory Service Interfaces (ADSI) Edit when you click Apply in the Properties dialog box:
    Multiple values were specified for an attribute that can have only one value
This problem occurs even though the Active Directory Schema describes the description property as a multivalued attribute.

CAUSE

The description property of a user object in Active Directory must be only a single value. Early in the development process for Active Directory, the description property was defined in the Active Directory Schema as an attribute that could contain multiple values. However, the implementation of how the attribute is stored on a specific object prevents multiple values from being put in the property. Therefore, the constraint violation error occurs.

RESOLUTION

Put only single values in the description property of an object.

STATUS

Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.

MORE INFORMATION

Steps to reproduce the problem

In Microsoft Visual Basic Scripting Edition, follow these steps:
  1. Create a new text file.
  2. Add the following lines of code to the text file. Replace the LDAP_PATH string with a valid LDAP ADsPath for a user.
    dim oUser
    Wscript.Echo "Binding to a user object"
    Set oUser = GetObject("LDAP_PATH")
    WScript.Echo "Attempting to set multiple values into the description property"
    oUser.Put "description", ARRAY("Description one", "Description Two")
    					
  3. Save the text file on the desktop. Name the text file Test.vbs.
  4. Use Cscript.exe to run the Test.vbs file.
You receive the following error message:
Trying to Set Multiple Values into Description

Modification Type:MajorLast Reviewed:5/19/2005
Keywords:kbDSWADSI2003Swept kbbug kbnofix KB286760 kbAudDeveloper