it4baer
Goto Top

CSharp abruf der Domänengruppen und User

Hi,

ich habe ein Problem mit dem Abruf der Domänengruppen und User.

im Internet findet man viele beispiele mit den PrincipalContext...
https://msdn.microsoft.com/de-de/library/system.directoryservices.accoun ...


Dazu braucht man folgendes Using
System.DirectoryServices.AccountManagement

leider bekomme ich das im Visual Studio 2017 nicht zum laufen.
=> ich habe die DLL (System.DirectoryServices.AccountManagement.dll) vom .NET Framework v4.0 und V4.6 ausprobiert. Leider wird das Program weitestgehend ohne debug beendet...

einen Fehler bekomme ich nicht

hier das Script welches ich zum Test habe:
            PrincipalContext ctx = new PrincipalContext(ContextType.Domain, domainName);
            GroupPrincipal grp = GroupPrincipal.FindByIdentity(ctx, IdentityType.SamAccountName, groupName);

            if (grp != null)
            {
                foreach (Principal p in grp.GetMembers(false))
                {
                    Console.WriteLine(p.SamAccountName + " - " + p.DisplayName);  
                }


                grp.Dispose();
                ctx.Dispose();
                Console.ReadLine();
            }
            else
            {
                Console.WriteLine("\nWe did not find that group in that domain, perhaps the group resides in a different domain?");  
                Console.ReadLine();
            }

Content-Key: 360437

Url: https://administrator.de/contentid/360437

Ausgedruckt am: 29.03.2024 um 09:03 Uhr

Mitglied: eisbein
eisbein 09.01.2018 um 13:02:42 Uhr
Goto Top
Hallo!

einen Fehler bekomme ich nicht

Ich sehe im Code kein Try / Catch.

Bau das mal ein und berichte das Ergebnis.

Gruß
eisbein
Mitglied: it4baer
it4baer 09.01.2018 um 13:11:24 Uhr
Goto Top
Hi,

sag ich doch "unbekannter Fehler"... Visual Studio kann damit nicht umgehen...
Mitglied: eisbein
eisbein 09.01.2018 aktualisiert um 13:52:16 Uhr
Goto Top
Hallo!

einen Fehler bekomme ich nicht
sag ich doch "unbekannter Fehler"

Ist das etwa ein Widerspruch??

VS ist bzgl. Fehlermeldungen nicht sehr kommunikativ, darum versuche erst mal die Codezeile zu finden, die den "Fehler" verursacht.

Gruß
eisbein

Edit: bösen Tippfehler beseitigt face-wink
Mitglied: it4baer
it4baer 09.01.2018 um 13:27:29 Uhr
Goto Top
VB?

hast du meine Frage überhaupt gelesen?
Sprechen wir vom selben? ... ich glaube nicht...
Mitglied: eisbein
eisbein 09.01.2018 um 13:35:13 Uhr
Goto Top
VB?

VS -> mein Tippfehler - sorry


Dann weiterhin viel Spaß
Mitglied: it4baer
it4baer 09.01.2018 um 13:42:49 Uhr
Goto Top
habs schon gelöst face-smile
Mitglied: eisbein
eisbein 09.01.2018 um 13:50:12 Uhr
Goto Top
habs schon gelöst

Sehr schön. face-wink

Willst du die Lösung evtl. im Forum mitteilen oder besser für dich behalten?
Mitglied: it4baer
it4baer 10.01.2018 um 07:39:35 Uhr
Goto Top
hab über nuget das richtige DirectoryServices geladen ...
Mitglied: 135111
135111 10.01.2018 aktualisiert um 13:45:42 Uhr
Goto Top
Zitat von @it4baer:

hab über nuget das richtige DirectoryServices geladen ...
Der Namespaces ist schon im NET Framework enthalten, du musst ihn also nur unter Verweise ->Framework importieren, das ist also vollkommener Quatsch das herunterzuladen!
Mitglied: it4baer
it4baer 10.01.2018 um 11:04:44 Uhr
Goto Top
danke für den äußerst wertvollen Beitrag
Mitglied: 135111
135111 10.01.2018 aktualisiert um 11:16:03 Uhr
Goto Top
Zitat von @it4baer:

danke für den äußerst wertvollen Beitrag
Keine Ursache. Falsche Tatsachen muss man korrigieren bevor sie noch jemand falsch macht.

screenshot
Mitglied: eisbein
eisbein 10.01.2018 um 11:25:03 Uhr
Goto Top
Hallo!

ich habe die DLL (System.DirectoryServices.AccountManagement.dll) vom .NET Framework v4.0 und V4.6 ausprobiert.

@135111 kann es sein, dass ich jetzt doppelt lese. face-wink

Gruß
eisbein
Mitglied: 135111
135111 10.01.2018 aktualisiert um 13:44:40 Uhr
Goto Top
Die DLL braucht er ja gar nicht explizit sondern kann es direkt unter Verweise anklicken. Mit den Versionen funktioniert es ebenfalls einwandfrei wenn er die Daten dann mal am GlobalCatalog-Port abfragen würde.