Compartir a través de


Función GetUserProfileDirectoryA (userenv.h)

Recupera la ruta de acceso al directorio raíz del perfil del usuario especificado.

Sintaxis

USERENVAPI BOOL GetUserProfileDirectoryA(
  [in]            HANDLE  hToken,
  [out, optional] LPSTR   lpProfileDir,
  [in, out]       LPDWORD lpcchSize
);

Parámetros

[in] hToken

Tipo: HANDLE

Token para el usuario, que devuelve la función LogonUser, CreateRestrictedToken, DuplicateToken, OpenProcessToken o OpenThreadToken . El token debe tener acceso TOKEN_QUERY. Para obtener más información, vea Derechos de acceso para objetos Access-Token.

[out, optional] lpProfileDir

Tipo: LPTSTR

Puntero a un búfer que, cuando esta función vuelve correctamente, recibe la ruta de acceso al directorio de perfil del usuario especificado.

[in, out] lpcchSize

Tipo: LPDWORD

Especifica el tamaño del búfer lpProfileDir , en TCHAR.

Si el búfer especificado por lpProfileDir no es lo suficientemente grande o lpProfileDir es NULL, se produce un error en la función y este parámetro recibe el tamaño de búfer necesario, incluido el carácter nulo de terminación.

Valor devuelto

Tipo: BOOL

TRUE si se realiza correctamente; de lo contrario, FALSE. Para obtener información de error extendida, llame a GetLastError.

Comentarios

A continuación se muestra un ejemplo de la ruta de acceso devuelta por GetUserProfileDirectory en Windows XP:

C:\Documents and Settings\Joe

A continuación se muestra un ejemplo de la ruta de acceso devuelta por GetUserProfileDirectory en Windows 7:

C:\Users\Joe

Para obtener las rutas de acceso de los subdirectorios de este directorio, use la función SHGetFolderPath (Windows XP y versiones anteriores) o SHGetKnownFolderPath (Windows Vista).

Nota

El encabezado userenv.h define GetUserProfileDirectory como alias que selecciona automáticamente la versión ANSI o Unicode de esta función en función de la definición de la constante de preprocesador UNICODE. La combinación del uso del alias neutro de codificación con código que no es neutral de codificación puede provocar discrepancias que dan lugar a errores de compilación o en tiempo de ejecución. Para obtener más información, vea Convenciones para prototipos de función.

Requisitos

   
Cliente mínimo compatible Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado userenv.h
Library Userenv.lib
Archivo DLL Userenv.dll

Consulte también

GetAllUsersProfileDirectory

GetDefaultUserProfileDirectory

GetProfilesDirectory

Introducción a los perfiles de usuario

Referencia de perfiles de usuario