¿Cómo obtener el nombre completo del usuario de Windows en python?

Estoy tratando de obtener el nombre completo del usuario. No es el nombre de inicio de sesión, sino el nombre completo que aparece en la parte superior derecha del menú de inicio en Windows 7. Es posible que solo aparezca como el nombre completo en una configuración de directorio activo.

os.environ['USERNAME'] win32api.GetUserName() 

Ambos devuelven el nombre de inicio de sesión. ¿Cómo obtengo el nombre completo del usuario?

Un poco de google me da este enlace.

y este código:

 import ctypes def get_display_name(): GetUserNameEx = ctypes.windll.secur32.GetUserNameExW NameDisplay = 3 size = ctypes.pointer(ctypes.c_ulong(0)) GetUserNameEx(NameDisplay, None, size) nameBuffer = ctypes.create_unicode_buffer(size.contents.value) GetUserNameEx(NameDisplay, nameBuffer, size) return nameBuffer.value 

Probado y funciona en Windows XP


Como lo señaló OP en su comentario aquí, pywin32 envuelve esta misma llamada de API en una función más simple:

 win32api.GetUserName(3) 

GetUserName apunta a ctypes.windll.secur32.GetUserNameExW , y 3 es el mismo 3 que la constante de ctypes