4 #pragma GCC system_header
10 #define WINSHELLAPI DECLSPEC_IMPORT
15 #define ABS_AUTOHIDE 1
16 #define ABS_ALWAYSONTOP 2
17 #define SEE_MASK_CLASSNAME 1
18 #define SEE_MASK_CLASSKEY 3
19 #define SEE_MASK_IDLIST 4
20 #define SEE_MASK_INVOKEIDLIST 12
21 #define SEE_MASK_ICON 0x10
22 #define SEE_MASK_HOTKEY 0x20
23 #define SEE_MASK_NOCLOSEPROCESS 0x40
24 #define SEE_MASK_CONNECTNETDRV 0x80
25 #define SEE_MASK_FLAG_DDEWAIT 0x100
26 #define SEE_MASK_DOENVSUBST 0x200
27 #define SEE_MASK_FLAG_NO_UI 0x400
28 #define SEE_MASK_NO_CONSOLE 0x8000
29 #define SEE_MASK_UNICODE 0x10000
30 #define SEE_MASK_ASYNCOK 0x100000
31 #define SEE_MASK_HMONITOR 0x200000
34 #define ABM_QUERYPOS 2
36 #define ABM_GETSTATE 4
37 #define ABM_GETTASKBARPOS 5
38 #define ABM_ACTIVATE 6
39 #define ABM_GETAUTOHIDEBAR 7
40 #define ABM_SETAUTOHIDEBAR 8
41 #define ABM_WINDOWPOSCHANGED 9
42 #define ABN_STATECHANGE 0
43 #define ABN_POSCHANGED 1
44 #define ABN_FULLSCREENAPP 2
45 #define ABN_WINDOWARRANGE 3
54 #define SE_ERR_ACCESSDENIED 5
56 #define SE_ERR_DLLNOTFOUND 32
57 #define SE_ERR_SHARE 26
58 #define SE_ERR_ASSOCINCOMPLETE 27
59 #define SE_ERR_DDETIMEOUT 28
60 #define SE_ERR_DDEFAIL 29
61 #define SE_ERR_DDEBUSY 30
62 #define SE_ERR_NOASSOC 31
67 #define FOF_MULTIDESTFILES 1
68 #define FOF_CONFIRMMOUSE 2
70 #define FOF_RENAMEONCOLLISION 8
71 #define FOF_NOCONFIRMATION 16
72 #define FOF_WANTMAPPINGHANDLE 32
73 #define FOF_ALLOWUNDO 64
74 #define FOF_FILESONLY 128
75 #define FOF_SIMPLEPROGRESS 256
76 #define FOF_NOCONFIRMMKDIR 512
77 #define FOF_NOERRORUI 1024
78 #define FOF_NOCOPYSECURITYATTRIBS 2048
81 #define PO_PORTCHANGE 32
82 #define PO_REN_PORT 52
83 #define SHGFI_ICON 256
84 #define SHGFI_DISPLAYNAME 512
85 #define SHGFI_TYPENAME 1024
86 #define SHGFI_ATTRIBUTES 2048
87 #define SHGFI_ICONLOCATION 4096
88 #define SHGFI_EXETYPE 8192
89 #define SHGFI_SYSICONINDEX 16384
90 #define SHGFI_LINKOVERLAY 32768
91 #define SHGFI_SELECTED 65536
92 #define SHGFI_ATTR_SPECIFIED 131072
93 #define SHGFI_LARGEICON 0
94 #define SHGFI_SMALLICON 1
95 #define SHGFI_OPENICON 2
96 #define SHGFI_SHELLICONSIZE 4
98 #define SHGFI_USEFILEATTRIBUTES 16
99 #define SHERB_NOCONFIRMATION 1
100 #define SHERB_NOPROGRESSUI 2
101 #define SHERB_NOSOUND 4
103 typedef WORD FILEOP_FLAGS
;
104 typedef WORD PRINTEROP_FLAGS
;
105 #include <pshpack2.h>
106 typedef struct _AppBarData
{
109 UINT uCallbackMessage
;
113 } APPBARDATA
,*PAPPBARDATA
;
114 DECLARE_HANDLE(HDROP
);
115 typedef struct _NOTIFYICONDATAA
{
120 UINT uCallbackMessage
;
123 } NOTIFYICONDATAA
,*PNOTIFYICONDATAA
;
124 typedef struct _NOTIFYICONDATAW
{
129 UINT uCallbackMessage
;
132 } NOTIFYICONDATAW
,*PNOTIFYICONDATAW
;
133 typedef struct _SHELLEXECUTEINFOA
{
149 } SHELLEXECUTEINFOA
,*LPSHELLEXECUTEINFOA
;
150 typedef struct _SHELLEXECUTEINFOW
{
156 LPCWSTR lpParameters
;
166 } SHELLEXECUTEINFOW
,*LPSHELLEXECUTEINFOW
;
167 typedef struct _SHFILEOPSTRUCTA
{
173 BOOL fAnyOperationsAborted
;
175 LPCSTR lpszProgressTitle
;
176 } SHFILEOPSTRUCTA
,*LPSHFILEOPSTRUCTA
;
177 typedef struct _SHFILEOPSTRUCTW
{
183 BOOL fAnyOperationsAborted
;
185 LPCWSTR lpszProgressTitle
;
186 } SHFILEOPSTRUCTW
,*LPSHFILEOPSTRUCTW
;
187 typedef struct _SHFILEINFOA
{
191 CHAR szDisplayName
[MAX_PATH
];
194 typedef struct _SHFILEINFOW
{
198 WCHAR szDisplayName
[MAX_PATH
];
199 WCHAR szTypeName
[80];
201 typedef struct _SHQUERYRBINFO
{
205 } SHQUERYRBINFO
, *LPSHQUERYRBINFO
;
208 LPWSTR
* WINAPI
CommandLineToArgvW(LPCWSTR
,int*);
209 void WINAPI
DragAcceptFiles(HWND
,BOOL
);
210 void WINAPI
DragFinish(HDROP
);
211 UINT WINAPI
DragQueryFileA(HDROP
,UINT
,LPSTR
,UINT
);
212 UINT WINAPI
DragQueryFileW(HDROP
,UINT
,LPWSTR
,UINT
);
213 BOOL WINAPI
DragQueryPoint(HDROP
,LPPOINT
);
214 HICON WINAPI
ExtractAssociatedIconA(HINSTANCE
,LPCSTR
,PWORD
);
215 HICON WINAPI
ExtractAssociatedIconW(HINSTANCE
,LPCWSTR
,PWORD
);
216 HICON WINAPI
ExtractIconA(HINSTANCE
,LPCSTR
,UINT
);
217 HICON WINAPI
ExtractIconW(HINSTANCE
,LPCWSTR
,UINT
);
218 UINT WINAPI
ExtractIconExA(LPCSTR
,int,HICON
*,HICON
*,UINT
);
219 UINT WINAPI
ExtractIconExW(LPCWSTR
,int,HICON
*,HICON
*,UINT
);
220 HINSTANCE WINAPI
FindExecutableA(LPCSTR
,LPCSTR
,LPSTR
);
221 HINSTANCE WINAPI
FindExecutableW(LPCWSTR
,LPCWSTR
,LPWSTR
);
222 UINT WINAPI
SHAppBarMessage(DWORD
,PAPPBARDATA
);
223 BOOL WINAPI
Shell_NotifyIconA(DWORD
,PNOTIFYICONDATAA
);
224 BOOL WINAPI
Shell_NotifyIconW(DWORD
,PNOTIFYICONDATAW
);
225 int WINAPI
ShellAboutA(HWND
,LPCSTR
,LPCSTR
,HICON
);
226 int WINAPI
ShellAboutW(HWND
,LPCWSTR
,LPCWSTR
,HICON
);
227 HINSTANCE WINAPI
ShellExecuteA(HWND
,LPCSTR
,LPCSTR
,LPCSTR
,LPCSTR
,INT
);
228 HINSTANCE WINAPI
ShellExecuteW(HWND
,LPCWSTR
,LPCWSTR
,LPCWSTR
,LPCWSTR
,INT
);
229 BOOL WINAPI
ShellExecuteExA(LPSHELLEXECUTEINFOA
);
230 BOOL WINAPI
ShellExecuteExW(LPSHELLEXECUTEINFOW
);
231 int WINAPI
SHFileOperationA(LPSHFILEOPSTRUCTA
);
232 int WINAPI
SHFileOperationW(LPSHFILEOPSTRUCTW
);
233 void WINAPI
SHFreeNameMappings(HANDLE
);
234 DWORD WINAPI
SHGetFileInfoA(LPCSTR
,DWORD
,SHFILEINFOA
*,UINT
,UINT
);
235 DWORD WINAPI
SHGetFileInfoW(LPCWSTR
,DWORD
,SHFILEINFOW
*,UINT
,UINT
);
236 HRESULT WINAPI
SHQueryRecycleBinA(LPCSTR
, LPSHQUERYRBINFO
);
237 HRESULT WINAPI
SHQueryRecycleBinW(LPCWSTR
, LPSHQUERYRBINFO
);
238 HRESULT WINAPI
SHEmptyRecycleBinA(HWND
,LPCSTR
,DWORD
);
239 HRESULT WINAPI
SHEmptyRecycleBinW(HWND
,LPCWSTR
,DWORD
);
242 typedef NOTIFYICONDATAW NOTIFYICONDATA
,*PNOTIFYICONDATA
;
243 typedef SHELLEXECUTEINFOW SHELLEXECUTEINFO
,*LPSHELLEXECUTEINFO
;
244 typedef SHFILEOPSTRUCTW SHFILEOPSTRUCT
,*LPSHFILEOPSTRUCT
;
245 typedef SHFILEINFOW SHFILEINFO
;
246 #define DragQueryFile DragQueryFileW
247 #define ExtractAssociatedIcon ExtractAssociatedIconW
248 #define ExtractIcon ExtractIconW
249 #define ExtractIconEx ExtractIconExW
250 #define FindExecutable FindExecutableW
251 #define Shell_NotifyIcon Shell_NotifyIconW
252 #define ShellAbout ShellAboutW
253 #define ShellExecute ShellExecuteW
254 #define ShellExecuteEx ShellExecuteExW
255 #define SHFileOperation SHFileOperationW
256 #define SHGetFileInfo SHGetFileInfoW
257 #define SHQueryRecycleBin SHQueryRecycleBinW
258 #define SHEmptyRecycleBin SHEmptyRecycleBinW
261 typedef NOTIFYICONDATAA NOTIFYICONDATA
,*PNOTIFYICONDATA
;
262 typedef SHELLEXECUTEINFOA SHELLEXECUTEINFO
,*LPSHELLEXECUTEINFO
;
263 typedef SHFILEOPSTRUCTA SHFILEOPSTRUCT
,*LPSHFILEOPSTRUCT
;
264 typedef SHFILEINFOA SHFILEINFO
;
265 #define DragQueryFile DragQueryFileA
266 #define ExtractAssociatedIcon ExtractAssociatedIconA
267 #define ExtractIcon ExtractIconA
268 #define ExtractIconEx ExtractIconExA
269 #define FindExecutable FindExecutableA
270 #define Shell_NotifyIcon Shell_NotifyIconA
271 #define ShellAbout ShellAboutA
272 #define ShellExecute ShellExecuteA
273 #define ShellExecuteEx ShellExecuteExA
274 #define SHFileOperation SHFileOperationA
275 #define SHGetFileInfo SHGetFileInfoA
276 #define SHQueryRecycleBin SHQueryRecycleBinA
277 #define SHEmptyRecycleBin SHEmptyRecycleBinA