source: Daodan/MinGW/include/userenv.h@ 1068

Last change on this file since 1068 was 1046, checked in by alloc, 8 years ago

Daodan: Added Windows MinGW and build batch file

File size: 2.9 KB
Line 
1#ifndef _USERENV_H
2#define _USERENV_H
3#if __GNUC__ >=3
4#pragma GCC system_header
5#endif
6
7#ifdef __cplusplus
8extern "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
17typedef 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;
27typedef 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;
37BOOL WINAPI LoadUserProfileA(HANDLE,LPPROFILEINFOA);
38BOOL WINAPI LoadUserProfileW(HANDLE,LPPROFILEINFOW);
39BOOL WINAPI UnloadUserProfile(HANDLE,HANDLE);
40BOOL WINAPI GetProfilesDirectoryA(LPSTR,LPDWORD);
41BOOL WINAPI GetProfilesDirectoryW(LPWSTR,LPDWORD);
42BOOL WINAPI GetUserProfileDirectoryA(HANDLE,LPSTR,LPDWORD);
43BOOL WINAPI GetUserProfileDirectoryW(HANDLE,LPWSTR,LPDWORD);
44BOOL WINAPI CreateEnvironmentBlock(LPVOID*,HANDLE,BOOL);
45BOOL WINAPI DestroyEnvironmentBlock(LPVOID);
46#if (_WIN32_WINNT >= 0x0500)
47BOOL WINAPI DeleteProfileA(LPCSTR,LPCSTR,LPCSTR);
48BOOL WINAPI DeleteProfileW(LPCWSTR,LPCWSTR,LPCWSTR);
49BOOL WINAPI GetProfileType(DWORD *);
50BOOL WINAPI GetAllUsersProfileDirectoryA(LPSTR,LPDWORD);
51BOOL WINAPI GetAllUsersProfileDirectoryW(LPWSTR,LPDWORD);
52BOOL WINAPI GetDefaultUserProfileDirectoryA(LPSTR,LPDWORD);
53BOOL WINAPI GetDefaultUserProfileDirectoryW(LPWSTR,LPDWORD);
54BOOL WINAPI ExpandEnvironmentStringsForUserA(HANDLE,LPCSTR,LPSTR,DWORD);
55BOOL WINAPI ExpandEnvironmentStringsForUserW(HANDLE,LPCWSTR,LPWSTR,DWORD);
56#endif
57#if (_WIN32_WINNT >= 0x0600)
58HRESULT WINAPI CreateProfile(LPCWSTR,LPCWSTR,LPWSTR,DWORD);
59#endif
60#ifdef UNICODE
61typedef PROFILEINFOW PROFILEINFO;
62typedef 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
73typedef PROFILEINFOA PROFILEINFO;
74typedef 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 */
Note: See TracBrowser for help on using the repository browser.