如何将“[email protected]”这样的upn名称转换为相应的NT帐户名称,该名称通常是“EXAMPLE \ user”?在我所熟悉的领域中,我可以在'@'符号之后的第一部分,但是我担心这不能保证是正确的。我必须运行ldap查询吗?如果我这样做,它会是用户的DirectoryEntry属性吗?如何将upn名称转换为登录名?
我想在C#中做到这一点,但我会欢迎任何指针或更正我的术语。
感谢
如何将“[email protected]”这样的upn名称转换为相应的NT帐户名称,该名称通常是“EXAMPLE \ user”?在我所熟悉的领域中,我可以在'@'符号之后的第一部分,但是我担心这不能保证是正确的。我必须运行ldap查询吗?如果我这样做,它会是用户的DirectoryEntry属性吗?如何将upn名称转换为登录名?
我想在C#中做到这一点,但我会欢迎任何指针或更正我的术语。
感谢
我结束了使用P-Invoke来调用DsCrackNames,而不是使用COM接口米莎建议(我的理解是围绕相同功能的包装)。
可以使用ActiveDs库这是目前在窗口的NameTranslateClass。
看: http://www.rlmueller.net/NameTranslateFAQ.htm
它是VBScript的写,但你可以通过它方便地互操作转移到C#。
请参阅MSDN: http://msdn.microsoft.com/en-us/library/aa706046(VS.85).aspx