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

Printed on: April 23, 2024 at 21:04 o'clock

Member: eisbein
eisbein Jan 09, 2018 at 12:02:42 (UTC)
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
Member: it4baer
it4baer Jan 09, 2018 at 12:11:24 (UTC)
Goto Top
Hi,

sag ich doch "unbekannter Fehler"... Visual Studio kann damit nicht umgehen...
Member: eisbein
eisbein Jan 09, 2018 updated at 12:52:16 (UTC)
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
Member: it4baer
it4baer Jan 09, 2018 at 12:27:29 (UTC)
Goto Top
VB?

hast du meine Frage überhaupt gelesen?
Sprechen wir vom selben? ... ich glaube nicht...
Member: eisbein
eisbein Jan 09, 2018 at 12:35:13 (UTC)
Goto Top
VB?

VS -> mein Tippfehler - sorry


Dann weiterhin viel Spaß
Member: it4baer
it4baer Jan 09, 2018 at 12:42:49 (UTC)
Goto Top
habs schon gelöst face-smile
Member: eisbein
eisbein Jan 09, 2018 at 12:50:12 (UTC)
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?
Member: it4baer
it4baer Jan 10, 2018 at 06:39:35 (UTC)
Goto Top
hab über nuget das richtige DirectoryServices geladen ...
Mitglied: 135111
135111 Jan 10, 2018 updated at 12:45:42 (UTC)
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!
Member: it4baer
it4baer Jan 10, 2018 at 10:04:44 (UTC)
Goto Top
danke für den äußerst wertvollen Beitrag
Mitglied: 135111
135111 Jan 10, 2018 updated at 10:16:03 (UTC)
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
Member: eisbein
eisbein Jan 10, 2018 at 10:25:03 (UTC)
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 Jan 10, 2018 updated at 12:44:40 (UTC)
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.