1 |
#ifndef _USERENV_H |
2 |
#define _USERENV_H |
3 |
#if __GNUC__ >=3 |
4 |
#pragma GCC system_header |
5 |
#endif |
6 |
|
7 |
#ifdef __cplusplus |
8 |
extern "C" { |
9 |
#endif |
10 |
#define PI_NOUI (1) |
11 |
#define PI_APPLYPOLICY (2) |
12 |
#if (_WIN32_WINNT >= 0x0500) |
13 |
#define PT_TEMPORARY (1) |
14 |
#define PT_ROAMING (2) |
15 |
#define PT_MANDATORY (4) |
16 |
#endif |
17 |
typedef struct _PROFILEINFOA { |
18 |
DWORD dwSize; |
19 |
DWORD dwFlags; |
20 |
LPSTR lpUserName; |
21 |
LPSTR lpProfilePath; |
22 |
LPSTR lpDefaultPath; |
23 |
LPSTR lpServerName; |
24 |
LPSTR lpPolicyPath; |
25 |
HANDLE hProfile; |
26 |
} PROFILEINFOA, *LPPROFILEINFOA; |
27 |
typedef struct _PROFILEINFOW { |
28 |
DWORD dwSize; |
29 |
DWORD dwFlags; |
30 |
LPWSTR lpUserName; |
31 |
LPWSTR lpProfilePath; |
32 |
LPWSTR lpDefaultPath; |
33 |
LPWSTR lpServerName; |
34 |
LPWSTR lpPolicyPath; |
35 |
HANDLE hProfile; |
36 |
} PROFILEINFOW, *LPPROFILEINFOW; |
37 |
BOOL WINAPI LoadUserProfileA(HANDLE,LPPROFILEINFOA); |
38 |
BOOL WINAPI LoadUserProfileW(HANDLE,LPPROFILEINFOW); |
39 |
BOOL WINAPI UnloadUserProfile(HANDLE,HANDLE); |
40 |
BOOL WINAPI GetProfilesDirectoryA(LPSTR,LPDWORD); |
41 |
BOOL WINAPI GetProfilesDirectoryW(LPWSTR,LPDWORD); |
42 |
BOOL WINAPI GetUserProfileDirectoryA(HANDLE,LPSTR,LPDWORD); |
43 |
BOOL WINAPI GetUserProfileDirectoryW(HANDLE,LPWSTR,LPDWORD); |
44 |
BOOL WINAPI CreateEnvironmentBlock(LPVOID*,HANDLE,BOOL); |
45 |
BOOL WINAPI DestroyEnvironmentBlock(LPVOID); |
46 |
#if (_WIN32_WINNT >= 0x0500) |
47 |
BOOL WINAPI DeleteProfileA(LPCSTR,LPCSTR,LPCSTR); |
48 |
BOOL WINAPI DeleteProfileW(LPCWSTR,LPCWSTR,LPCWSTR); |
49 |
BOOL WINAPI GetProfileType(DWORD *); |
50 |
BOOL WINAPI GetAllUsersProfileDirectoryA(LPSTR,LPDWORD); |
51 |
BOOL WINAPI GetAllUsersProfileDirectoryW(LPWSTR,LPDWORD); |
52 |
BOOL WINAPI GetDefaultUserProfileDirectoryA(LPSTR,LPDWORD); |
53 |
BOOL WINAPI GetDefaultUserProfileDirectoryW(LPWSTR,LPDWORD); |
54 |
BOOL WINAPI ExpandEnvironmentStringsForUserA(HANDLE,LPCSTR,LPSTR,DWORD); |
55 |
BOOL WINAPI ExpandEnvironmentStringsForUserW(HANDLE,LPCWSTR,LPWSTR,DWORD); |
56 |
#endif |
57 |
#if (_WIN32_WINNT >= 0x0600) |
58 |
HRESULT WINAPI CreateProfile(LPCWSTR,LPCWSTR,LPWSTR,DWORD); |
59 |
#endif |
60 |
#ifdef UNICODE |
61 |
typedef PROFILEINFOW PROFILEINFO; |
62 |
typedef LPPROFILEINFOW LPPROFILEINFO; |
63 |
#define LoadUserProfile LoadUserProfileW |
64 |
#define GetProfilesDirectory GetProfilesDirectoryW |
65 |
#define GetUserProfileDirectory GetUserProfileDirectoryW |
66 |
#if (_WIN32_WINNT >= 0x0500) |
67 |
#define DeleteProfile DeleteProfileW |
68 |
#define GetAllUsersProfileDirectory GetAllUsersProfileDirectoryW |
69 |
#define GetDefaultUserProfileDirectory GetDefaultUserProfileDirectoryW |
70 |
#define ExpandEnvironmentStringsForUser ExpandEnvironmentStringsForUserW |
71 |
#endif |
72 |
#else |
73 |
typedef PROFILEINFOA PROFILEINFO; |
74 |
typedef LPPROFILEINFOA LPPROFILEINFO; |
75 |
#define LoadUserProfile LoadUserProfileA |
76 |
#define GetProfilesDirectory GetProfilesDirectoryA |
77 |
#define GetUserProfileDirectory GetUserProfileDirectoryA |
78 |
#if (_WIN32_WINNT >= 0x0500) |
79 |
#define DeleteProfile DeleteProfileA |
80 |
#define GetAllUsersProfileDirectory GetAllUsersProfileDirectoryA |
81 |
#define GetDefaultUserProfileDirectory GetDefaultUserProfileDirectoryA |
82 |
#define ExpandEnvironmentStringsForUser ExpandEnvironmentStringsForUserA |
83 |
#endif |
84 |
#endif |
85 |
#ifdef __cplusplus |
86 |
} |
87 |
#endif |
88 |
#endif /* _USERENV_H */ |