Additional property page sheet in Active Directory User and Computer MMC

Some time ago I developed ADUaCET, an extension for the Active Directory User and Computer MMC snap-in. Sad to say but the ADUaCET property page is not shown if you are searching for an user. It is only available if you use the procedure right click $USER -> Properties. I struggled the whole day with collecting information about this issue.

My results are the following:

  • It is not possible to use .NET and only Microsoft.Management.Advanced.PropertySheetExtension for having the property page tab after doing an Active Directory search.
  • Active Directory User and Computer MMC delegates the search to dsquery.dll, OpenQueryWindow. OpenQueryWindow uses an out pointer to pass back the Active Directory entries which were found by search query.
  • All default property pages (Member of, Sessions, Organization etc.) are included by MMC as COM objects.
  • All COM objects to be included in the User property page are stored in the Active Directory schema in CN=adminPropertyPages,CN=user-Display,CN=40[7|9],CN=DisplaySpecifiers,CN=Configuration,DC=yourdomain,DC=local. You can use ADSIEdit to change the used COM objects.
  • adminPropertyPages contains 10 GUIDs by default which are references to the registered COM objects. For example %systemroot%system32adprop.dll (GUID {6DFE6488-A212-11D0-BCD5-00C04FD8D5B6}) is one of them.
  • For determining which COM DLLs are used take an entry from adminPropertyPages and search your registry below HKLMSOFTWAREClassesCLSID$GUIDInProcServer32
  • A good example for registrating a new property page sheet COM object can be found at Yusufs.Directory.Blog (German).
  • Microsoft has two pages about Implement the Property Page COM Object and Registering the Property Page COM Object
  • has an example project which is based on .NET/C#. The example publishes a new property page sheet as COM object. Really helpful!

Leave a reply

Your email address will not be published.

You may use these HTML tags and attributes:

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>