Microsoft Active Directory Documentation Script Update Version 2.16

December 4, 2017

Active Directory, PowerShell

I finally got around to implementing the most requested feature. Making the script work for a child domain in a multi-domain Active Directory Forest. My PowerShell and AD mentor, Michael B. Smith, helped tremendously in making sure the stuff added to the script met his high standards. As usual, he also made a couple of other suggestions I implemented.

#Version 2.16 released 4-Dec-2017

  • Add checking for users with home drive set in Active Directory Users and Computers (ADUC)
    • Added function OutputHDUserInfo
  • Add checking for users with RDS home drive set in ADUC
    • Added function from Jeff Hicks Get-RDUserSetting
    • Added function OutputRDSHDUserInfo
  • Add checking for users whose Primary Group is not Domain Users
    • Added function OutputPGUserInfo
  • Add “DC: ” in front of the domain controller name, in text output, for domain controller information
  • Add new parameter ADDomain to restrict report to a single domain in a multi-domain Forest
  • Add schema extension checking for the following items and add to Forest section:
    • ‘User-Account-Control’, #Flags that control the behavior of a user account
    • ‘msNPAllowDialin’, #RAS Server
    • ‘ms-Mcs-AdmPwd’, #LAPS
    • ‘ms-Mcs-AdmPwdExpirationTime’, #LAPS
    • ‘ms-SMS-Assignment-Site-Code’, #SCCM
    • ‘ms-SMS-Capabilities’, #SCCM
    • ‘msRTCSIP-UserRoutingGroupId’, #Lync/SfB
    • ‘msRTCSIP-MirrorBackEndServer’ #Lync/SfB
    • ‘ms-exch-schema-version-pt’ #Exchange
  • Add “Site: ” in front of Site name when listing Subnets, Servers, and Connection Objects
  • Remove several large blocks of code that had been commented out
  • Revise how $LinkedGPOs and $InheritedGPOs variables are set to work around invalid property name DisplayName when collection is empty
  • Sort Enabled Scopes in AD Optional Features
  • Text output changes to tabular data:
    • Domain Controllers (in Forest section)
    • AD Schema Items (in Forest section)
    • Services
    • Organizational Units
    • Domain Admins
    • Enterprise Admins
    • Schema Admins
    • Users with AdminCount=1
  • Updated Exchange schema versions
  • Updated help text
  • When reporting on the domain controllers in the Forest, if unable to get data from a domain controller, instead of reporting “Unknown”, use Unable to retrieve status
  • When run for a single domain in a multi-domain forest
    • Revise gathering list of domains
    • Revise testing for $ComputerName
    • Revise variable $ADContext in Function ProcessAllDCsInTheForest

Many thanks to Choice Solutions for their support in getting this script updated and released.

You can always find the most current script by going to



About Carl Webster

Webster is a Sr. Solutions Architect for Choice Solutions, LLC and specializes in Citrix, Active Directory and Technical Documentation. Webster has been working with Citrix products for many years starting with Multi-User OS/2 in 1990.

View all posts by Carl Webster

No comments yet.

Leave a Reply