نسخ مستخدم ActiveDirectory

أحاول نسخ مستخدم AD حالي إلى مستخدم جديد باستخدام هذا:

DirectoryEntry entry = new DirectoryEntry(LDAP.Entry(), LDAP.User(), LDAP.PW());
entry.CopyTo(new DirectoryEntry("CN=UserToCopy,OU=Users,DC=Domain,DC=local"), "NewUserName");

هذا يعطي الخطأ:

"System.Runtime.InteropServices.COMException: 'خطأ غير محدد'"

0

1 إجابة

وفقًا لـ يجب أن يكون التوثيق ، entry هو الكائن الذي تريد نسخه ، والمعلمة الأولى هي الأصل للكائن الجديد (OU). شيء من هذا القبيل:

entry.CopyTo(new DirectoryEntry("LDAP://OU=Users,DC=Domain,DC=local"), "NewUserName");
0
وأضاف
نعم ، هذا ما فعلته حتى الآن ، لكن ذلك يرمي الخطأ.
وأضاف المؤلف TBoy3, مصدر
حسنا ، ولكن كيف يمكنني بعد ذلك تحديد المستخدم الذي لنسخ؟ حاولت إزالة CN = usertocopy ، لكنه أعطى نفس الخطأ.
وأضاف المؤلف TBoy3, مصدر
هل يمكنك كتابة الرمز الكامل لهذا المثال. أنا لا أفهم أين يتم تعريف المستخدم لنسخ.
وأضاف المؤلف TBoy3, مصدر
حاول هذا: DirectoryEntry entry1 = new DirectoryEntry ("LDAP://CN = MyName، OU = MyOU، OU = AnotherOU، DC = Dom و zwnj؛ ain، DC = local"، BEOF_LDAP.User ()، BEOF_LDAP.PW ()) . entry1.CopyTo (new DirectoryEntry ("OU = OU = MyOU، OU = AnotherOU، DC = Domain، DC = local") & zwnj؛، "Test")؛ قدم نفس الخطأ.
وأضاف المؤلف TBoy3, مصدر
كان هذا مجرد خطأ مطبعي هنا ، والخطأ لا يزال هناك دون ou = مزدوجة
وأضاف المؤلف TBoy3, مصدر
لديك جديد DirectoryEntry ("CN = UserToCopy، OU = Users، DC = Domain، DC = local") . لاحظ CN = UserToCopy - هذا مستخدم ، وليس OU.
وأضاف المؤلف Gabriel Luci, مصدر
المستخدم الذي تريد نسخه هو entry .
وأضاف المؤلف Gabriel Luci, مصدر
تقوم بتعريف المستخدم لنسخه في السطر الأول في المثال الخاص بك: entry = new DirectoryEntry (...)
وأضاف المؤلف Gabriel Luci, مصدر
لديك OU = OU = . يجب أن يكون OU = واحدًا فقط.
وأضاف المؤلف Gabriel Luci, مصدر
أه آسف. أنا أرى المشكلة. أنا مندهش أنني لم ألاحظ في وقت سابق. أنت بحاجة إلى "LDAP: //" في مسار OU أيضًا: new DirectoryEntry ("LDAP://OU = OU = MyOU، OU = AnotherOU، DC = Domain، DC = & zwnj؛ local") </القانون>.
وأضاف المؤلف Gabriel Luci, مصدر