58 lines
1.6 KiB
C
58 lines
1.6 KiB
C
|
#ifndef _USERENV_H
|
||
|
#define _USERENV_H
|
||
|
#if __GNUC__ >=3
|
||
|
#pragma GCC system_header
|
||
|
#endif
|
||
|
|
||
|
#ifdef __cplusplus
|
||
|
extern "C" {
|
||
|
#endif
|
||
|
#define PI_NOUI (1)
|
||
|
#define PI_APPLYPOLICY (2)
|
||
|
typedef struct _PROFILEINFOA {
|
||
|
DWORD dwSize;
|
||
|
DWORD dwFlags;
|
||
|
LPSTR lpUserName;
|
||
|
LPSTR lpProfilePath;
|
||
|
LPSTR lpDefaultPath;
|
||
|
LPSTR lpServerName;
|
||
|
LPSTR lpPolicyPath;
|
||
|
HANDLE hProfile;
|
||
|
} PROFILEINFOA, *LPPROFILEINFOA;
|
||
|
typedef struct _PROFILEINFOW {
|
||
|
DWORD dwSize;
|
||
|
DWORD dwFlags;
|
||
|
LPWSTR lpUserName;
|
||
|
LPWSTR lpProfilePath;
|
||
|
LPWSTR lpDefaultPath;
|
||
|
LPWSTR lpServerName;
|
||
|
LPWSTR lpPolicyPath;
|
||
|
HANDLE hProfile;
|
||
|
} PROFILEINFOW, *LPPROFILEINFOW;
|
||
|
BOOL WINAPI LoadUserProfileA(HANDLE,LPPROFILEINFOA);
|
||
|
BOOL WINAPI LoadUserProfileW(HANDLE,LPPROFILEINFOW);
|
||
|
BOOL WINAPI UnloadUserProfile(HANDLE,HANDLE);
|
||
|
BOOL WINAPI GetProfilesDirectoryA(LPSTR,LPDWORD);
|
||
|
BOOL WINAPI GetProfilesDirectoryW(LPWSTR,LPDWORD);
|
||
|
BOOL WINAPI GetUserProfileDirectoryA(HANDLE,LPSTR,LPDWORD);
|
||
|
BOOL WINAPI GetUserProfileDirectoryW(HANDLE,LPWSTR,LPDWORD);
|
||
|
BOOL WINAPI CreateEnvironmentBlock(LPVOID*,HANDLE,BOOL);
|
||
|
BOOL WINAPI DestroyEnvironmentBlock(LPVOID);
|
||
|
#ifdef UNICODE
|
||
|
typedef PROFILEINFOW PROFILEINFO;
|
||
|
typedef LPPROFILEINFOW LPPROFILEINFO;
|
||
|
#define LoadUserProfile LoadUserProfileW
|
||
|
#define GetProfilesDirectory GetProfilesDirectoryW
|
||
|
#define GetUserProfileDirectory GetUserProfileDirectoryW
|
||
|
#else
|
||
|
typedef PROFILEINFOA PROFILEINFO;
|
||
|
typedef LPPROFILEINFOA LPPROFILEINFO;
|
||
|
#define LoadUserProfile LoadUserProfileA
|
||
|
#define GetProfilesDirectory GetProfilesDirectoryA
|
||
|
#define GetUserProfileDirectory GetUserProfileDirectoryA
|
||
|
#endif
|
||
|
#ifdef __cplusplus
|
||
|
}
|
||
|
#endif
|
||
|
#endif /* _USERENV_H */
|