When selecting and checking out a GPO or editing a GPO via GPOADMIN results in this error:
System.Runtime.InteropServices.COMException (0x80070091): The directory is not empty. (Exception from HRESULT: 0x80070091)
This can happen if an unresolved SID is assigned to the GPO. Example: A user was assigned permissions to a GPO. Then the user was deleted from Active Directory. what is left is an unresolved SID.
Remove the SID from the GPO. Then re-try checking out or editing the GPO.
The cause of this issue has been tested in GPOADmin 5.5 and this issue does not exist in the latest version.
This issue has also been caused by a GPOAdmin contacting a Domain Controller that was over worked and struggling to service SID lookup requests