tisdag 9 november 2010

bajsteknik

Kan någon förklara för mig varför nedanstående havererar på raden i try-blocket?
Jag börjar bli uppriktigt förbannad och frustrerad och sugen på en Stor Sprit, en cigg och brutal musik på hög volym och någon som muckar så mycket med mig att jag med gått samvete kan ge honom på käften. Utöver datorn alltså.



namespace testAD
{
class Program
{
static void Main(string[] args)
{
WindowsIdentity identity = WindowsIdentity.GetCurrent();

Console.WriteLine("Current Identity = {0}, IsSystem={1}, " +
"IsAuthenticated={2}, AuthenticationType={3}, Token={4} ", identity.Name,
identity.IsSystem, identity.IsAuthenticated, identity.AuthenticationType,
identity.Token.ToString() );



const string groupField = "memberOf";
DirectoryEntry directoryEntry = new DirectoryEntry("LDAP://test", "testadm", "testpwd", AuthenticationTypes.Secure);
DirectorySearcher directorySearcher = new DirectorySearcher(directoryEntry);

Console.WriteLine("directoryEntry: \n username: " + directoryEntry.Username);

directorySearcher.Filter = "(&(objectCategory=person)(objectClass=user)(sAMAccountName=" + "KONFXR" + "))";
directorySearcher.SearchScope = SearchScope.Subtree;
directorySearcher.ReferralChasing = ReferralChasingOption.None;
directorySearcher.CacheResults = true;
directorySearcher.PropertiesToLoad.Add(groupField);
SearchResult searchResult = null;
try
{
searchResult = directorySearcher.FindOne();
}
catch(Exception ex)
{
Console.WriteLine("Exception: \n" + ex.Message);
if (ex.InnerException != null)
Console.WriteLine("InnerException: \n" + ex.InnerException.Message);
Console.ReadLine();
}

if (searchResult != null)
{
Console.WriteLine("SearchResult: \n" + searchResult.GetDirectoryEntry().Children.ToString());
Console.ReadLine();
}

}
}
}

7 kommentarer:

  1. Havererar som i vaddå? Vägrar kompilera? Eller får du körtidsfel?

    SvaraRadera
  2. Körtidsfel.
    Fast det är löst nu.

    Men tack för omtanken!

    SvaraRadera
  3. För all del. Men låt höra vad det var som var fel! Jag blev ju nyfniken. (Det var mig inte uppenbart.)

    SvaraRadera
  4. Är detta ditt jobb?
    Skriver du sådanahär ramsor och det blir en funktion av det?
    Intressant att se något som man inte begriper ett spår av.

    SvaraRadera
  5. Ja, Tekrånglat, sånt här skriver jag på jobbet. Fast det brukar vara färgkodat och ha lite tabbar i början så det går lättare att läsa och programmen där jag skriver den här texten har massor av hjälp på olika sätt.

    Tobias:
    System.DirectoryServices använder något som heter LDS (Lightweight Directory Services) Client. Den skrevs om helt för Windows 7. Tittar du högre upp där jag skapar min DirectoryEntry ser du att jag använder AuthenticationType "Secure". Detta innebär att min LDS-klient skickar med en extra flagga, som äldre AD (de på server 2003 och 2000) inte begriper och därför inte låter mig logga in. För Server 2003, SP1 finns en patch som löser det. Annars får man helt enkelt skicka en annan AuthenticationType.

    Är du med?

    SvaraRadera
  6. Phu, jag blev alldeles svettig och fattade bara lite, men bara väldigt lite.
    Men det var säkert något bra!

    Lilla mig!

    SvaraRadera
  7. Det är ok, lilla du. Jag behövde liksom mest avreagera mig!

    SvaraRadera