Platform SDK: Active Directory, ADSI, and Directory Services

Display Specifiers

In Active Directory, an object class (or class) defines a type of object that can be created in Active Directory. The definition of each object class is stored as a classSchema object in the Active Directory schema. In addition to the classSchema definition, each object class can have one or more display specifiers that specify the user interface information for objects of that class.

A display specifier is an Active Directory object of the displaySpecifier class. The attributes of a displaySpecifier object specify localized user interface information that describes the various UI elements for a particular object class. Display specifiers store information for property sheets, context menus, icons, creation wizards, and localized class and attribute names. For property pages and context menus, the Windows shell and Active Directory administrative snap-ins use this information to form different user interfaces for administrators and end users—one set of property pages and/or context menus can be associated with administrative applications while a different set of elements can be associated with end user applications.

The displaySpecifier objects are stored in locale-specific containers in the DisplaySpecifiers container in the Configuration container, which is replicated to every domain controller in the enterprise forest. The DisplaySpecifiers container has subcontainers that correspond to the various locales supported by the enterprise installation. These subcontainers are named using language identifiers (for example, the name of the locale container for US-English is 409, which corresponds to the hexadecimal language identifier, 0x0409). Thus, an object class can have multiple display specifiers: one in each locale subcontainer. For more information about locales, see National Language Support.

The name of a displaySpecifier object is formed by appending the string "-Display" to the lDAPDisplayName of the object class. For example, the name of a displaySpecifier object for the user class is "user-Display".

You can add, delete, or modify properties of a class's displaySpecifier objects to specify the UI elements (class name, attribute names, property sheets, context menus, icon, and so on) that appear for each instance of an object of that class.

For additional information on display specifiers, see the following topics:

The following example shows the values set on the group-Display display specifier object:

[group-Display]
objectClass = displaySpecifier
ObjectCategory = Display-Specifier
cn = group-Display
adminPropertyPages = 1,{6dfe6489-a212-11d0-bcd5-00c04fd8d5b6}
adminPropertyPages = 2,{6dfe648b-a212-11d0-bcd5-00c04fd8d5b6}
adminPropertyPages = 3,{6dfe6488-a212-11d0-bcd5-00c04fd8d5b6}
adminPropertyPages = 4,{4E40F770-369C-11d0-8922-00A024AB2DBB}
shellPropertyPages = 1,{f5d121ee-c8ac-11d0-bcdb-00c04fd8d5b6}
shellPropertyPages = 2,{dde2c5e9-c8ae-11d0-bcdb-00c04fd8d5b6}
contextMenu = 0,{62AE1F9A-126A-11D0-A14B-0800361B1103}
adminContextMenu = 1,{08eb4fa6-6ffd-11d1-b0e0-00c04fd8dca6}
classDisplayName = Group
attributeDisplayNames = cn,Name
attributeDisplayNames = c,Country Abbreviation
attributeDisplayNames = description,Description
attributeDisplayNames = distinguishedName,X500 Distinguished Name
attributeDisplayNames = l,City
attributeDisplayNames = managedBy,Managed By
attributeDisplayNames = member,Members
attributeDisplayNames = notes,Notes
attributeDisplayNames = physicalDeliveryOfficeName,Delivery Office
attributeDisplayNames = url,Web Page Address
treatAsLeaf=True