ActiveDirectory erro 0x8000500c ao atravessar propriedades

Eu recebi o seguinte trecho SomeName/SomeDomain contém valores reais no meu código)

var entry = new DirectoryEntry("LDAP://CN=SomeName,OU=All Groups,dc=SomeDomain,dc=com");
foreach (object property in entry.Properties)
{
    Console.WriteLine(property);
}

Imprime OK para as primeiras 21 propriedades, mas falha com:

COMException {"Unknown error (0x8000500c)"}
   at System.DirectoryServices.PropertyValueCollection.PopulateList()
   at System.DirectoryServices.PropertyValueCollection..ctor(DirectoryEntry entry, String propertyName)
   at System.DirectoryServices.PropertyCollection.PropertyEnumerator.get_Entry()
   at System.DirectoryServices.PropertyCollection.PropertyEnumerator.get_Current()
   at ActiveDirectory.Tests.IntegrationTests.ObjectFactoryTests.TestMethod1() in MyTests.cs:line 22

Por quê? Como posso evitá-lo?

Atualiza

É um atributo personalizado que falh

Eu tentei usarentry.RefreshCache() eentry.RefreshCache(new[]{"theAttributeName"}) antes de enumerar as propriedades (o que não ajudou

Update2

entry.InvokeGet("theAttributeName") funciona (e semRefreshCache).

lguém pode explicar o porqu

Update3

Funciona se eu fornecer o FQDN para o item:LDAP://srv00014.ssab.com/CN=SomeName,xxxx

Recompens

Estou procurando uma resposta que aborde o seguinte:

Por quêentry.Properties["customAttributeName"] falha com a exceção mencionadaPor quêentry.InvokeGet("customAttributeName") trabalhA causa da exceçãoComo colocar os dois trabalhando

questionAnswers(10)

yourAnswerToTheQuestion