Sé que la siguiente función devuelve el nombre del usuario actual de Windows en el formato dominio \ nombre de usuario.¿Cómo obtengo el nombre del usuario actual de Windows en formato de nombre de usuario @ dominio?
Convert.ToString(WindowsIdentity.GetCurrent().Name);
Pero, ¿cómo puedo obtener el nombre del usuario en formato [email protected]
?
EDIT:
estoy respondiendo en esta edición como todos los que han respondido tiene la misma idea básica.
Según lo que me han dado a entender, el análisis del nombre del formato domain\username
y su construcción como [email protected]
no es seguro ni aconsejable. Creo que esto es así porque no hay garantía de que los dos nombres de dominio sean iguales en los diferentes formatos. Por ejemplo, en la empresa donde trabajo, la parte domain
del formato domain\username
se basa en el departamento, pero en el [email protected]
, es el nombre de la empresa. Es el tipo de cosa que requiere una búsqueda de DNS.
Esperaba que hubiera una API que hiciera esta búsqueda de DNS. Supongo que debería haber puesto esta información en mi pregunta original. Lo siento.
Estoy usando C# en mi aplicación. –
La propiedad que está buscando es el nombre principal del usuario (UPN). –
Intente enumerar WindowsIdentity.GetCurrent(). Reclamaciones, el UPN podría estar incluido. Si no, use P/Invoke para llamar a la función TranslateName. –