2009-10-04 11 views
16

Necesito mostrar el diálogo estándar "Seleccionar usuarios y grupos" desde una aplicación .NET/WPF. También necesito poder mostrarlo en un sistema operativo de 64 bits. Encontré this CodeProject artículo, que es bastante antiguo, que data de .NET 1.1 días. Está escrito en C++ administrado y expuesto como un objeto COM, que no funcionará para mis necesidades.Mostrar el cuadro de diálogo "Seleccionar usuarios y grupos" de la aplicación WPF?

¿Alguien ha implementado, o conoce una implementación, un contenedor puro .NET/C# para mostrar e interactuar con el sistema estándar de diálogo "Seleccionar usuarios y grupos" que funcionará con una aplicación WPF?

Respuesta

19

Bueno, encontré una solución. Resulta que estaba buscando algo equivocado. En lugar de "Seleccionar usuarios o grupos", lo correcto para buscar es "Selector de objetos de Active Directory". El ADOP es el diálogo común que se utiliza para seleccionar cualquier objeto de Active Directory, incluidos usuarios, grupos, computadoras, etc. Ocurre que este diálogo se titula "Seleccionar usuarios o grupos" la mayor parte del tiempo.

Para el beneficio de cualquier otra persona que se ha topado con este problema, les dejo un enlace a un proyecto de CodePlex, Active Directory Común Diálogos .NET que proporciona una muy fácil de usar envoltura .NET para este diálogo. Hace que sea más o menos tan fácil de usar como cualquier otra de diálogo .NET común:

http://adui.codeplex.com/

Para aquellos de ustedes que se ejecuta en un sistema operativo de 64 bits, o un sistema operativo más moderno (Win2k8 +), puede encontrarse con una bloquearse después de seleccionar usuarios o grupos y elegir aceptar. La solución al problema está aquí:

http://www.codeplex.com/ADUI/Thread/View.aspx?ThreadId=38047

Esperanza esto ayuda a cualquier otra persona que estaba/está buscando la misma cosa.

+1

+1 Realmente podría haber usado esto para un proyecto hace aproximadamente un año, terminé rodando uno desde cero. Uno para los marcadores, gracias – AdamW

+1

@kerchingo: Lo siento, no estaba buscando hace un año. : P Espero que esta pregunta/respuesta sea recogida por los motores de búsqueda, sin embargo. No hay nada más que relacione "Seleccionar usuarios o grupos" y "Selector de objetos de Active Directory" juntos, por lo que es casi imposible encontrar información útil. – jrista

+1

Hay un parche disponible que soluciona los problemas mencionados y otros: http://adui.codeplex.com/SourceControl/list/patches –

1

http://adui.codeplex.com/ - es una buena implementación pero tiene una pérdida de memoria que no pude eliminar. Si lo usa y trata de abrir el diálogo selector de anuncios varias veces, recibirá AccessViolationException para leer/escribir en la memoria. Es mala señal.

He usado otra envoltura de here. Debe ser un poco personalizado en el código pero AccessViolationExceptions.

+1

ADUI es lo que utilicé, si lee mi propia respuesta. También vinculé una solución a la fuga de memoria que causaba bloqueos. Hasta ahora, lo tengo funcionando perfectamente tanto en sistemas de 32 bits como de 64 bits. – jrista

Cuestiones relacionadas